sounds what the problem is... loose contacts inside tend to do that... i used to have an 87 mustang with a junk starter, and since i was a lazy 16 year old back then, i would just bump the starter with a wrench and then she'd crank for me ... but also check to see if theres some excessive wear on the starter... could also be dragging on the flywheel just a little bit and loosening the contacts from the excess vibrations... if thats the case buy a .100" starter spacer when you replace your starter