the loose ground is obviously a problem, but you might also take the switch box off the starter and check the copper contact in there, they get worn and oxidized and cause similar symptoms - especially if other bad connections have been present over time causing [more than usual] arcing in the switch
Bill