Are you measuring the voltage from one of the two 5V GPIO pins to any ground pin while it's running?
It would be nice to know which Raspi we're talking about.
You may be onto something about using the micro USB port versus powering it via GPIO. I remember that Robo 3D got in a batch of Raspberry Pi 3B computers which had sloppy micro USB connectors, the plug never could get a tight fit and the 5V would make/break as a result. (Testing this then, hold the micro USB plug firmly in place with rubber bands and see if the problem goes away.) If you find that it's the loose micro USB connector, consider adding a slight crimp in the connector housing with a pair of needle-nosed pliers or powering it differently.