You know, we REALLY need to find the best write-up on the auxiliary relay mod, or make a new one, and STICKY it! How many times have we answered this? It should be the first thing on the welcome page!
Sure, changing the solenoid contacts if they're roasted is a given. But the MAIN PROBLEM is the high resistance of the start circuit, with all the different connections it goes through, and the neutral switch with it's downsized wiring.
This is what causes the solenoid to not fully engage and burn the contacts in the first place!
Changing starters, batteries, cables, will sometimes "fix" it for a while because you just gave the system a little boost.
Doing the relay mod, (or just running a #10 wire directly from the ignition switch to the starter) is the only way to permanently cure this forever and done.
This can be very tricky to diagnose because 8-10 volts is enough to engage the bendix, and you hear that, thinking that the solenoid is engaging, and go chasing after high-amp circuit problems (contacts, battery, cables).
The catch is the SECOND spring, at the end of the solenoids travel, that keeps the contacts open. If you don't have a full 12 volts, it will clunk, clunk all day long without overcoming the second spring and engaging the contacts.