This is all good stuff guys, but it doesn't help to solve the problem.
Since he has tried at least three different starters, IMHO, that eliminates the starter as the problem. IMO that leaves four areas of concern.
1. A weak battery or a weak cell in the battery which can be verified by a load test on the battery.
2. Too small gauge positive battery cable. IMHO anything under 6 gauge is too small especially if we're talking a run of much more than two feet since as the length of the cable increases so does its impedance which will cause an undesired voltage drop.
3. An ignition switch that is close to being worn out.
4. The starter solenoid. If the contacts are burned it will cause it to stick and will also produce an undesirable voltage drop.
Personally, I would start at the starter solenoid.