I am really having to stretch my memory as to a fix for this. Many years ago I had the same symptoms and we fixed it by taking the spring off the starter drive gear and stretching it out to make it stronger. Just the opposite of what I would have thought would help, but the mechanic explained to me that the spring has to push the drive gear into mesh with the drive shaft of the starter for it to kick up and mesh with the flywheel and spin the motor. Mine would just spin away like free wheeling because the gear was not engaging the flywheel.
Just one more thing to check out. Easy to do and free too.
Good luck.
SeaRay