Re: starter??
Before spending a dime do a few simple tests.
Check battery voltage at the starter relay/positive battery cable then check again during cranking, check cranking voltage with and without spark plugs. How much voltage drop do you see in the three tests?
Grab your trusty battery jumper cables and jump directly from the battery top the starter, does it crank now? With the spark plugs in?
Poor connections, poor cables will not carry enough current and the voltage will drop. If your jumper cables crank fine this verifies the poor connections/cables.
If it will NOT crank well with the jumper cables you may want to look inside the starter.