do you have a heat shield between the headers and starter? Mine does the same thing if I drive it a long time and the underhood temps get up there, let it set 15-20 minutes and cool down and, it spins fine again. I ended up putting a larger batt wire going down to the starter and also ended up with a new battery (mine was 5 or 6 years old).