For the intermittent starter problem. always click but Start/won't start. Check the wire that engage the solenoid. I had this problem for few years and use turn the key on and off fast and it would start. Today it finally stop working completely. Click but don't turn. Like a bad battery but all the lights on the dash says on.
Here is the solution: Change the wire that goes from your fuse box to the solenoid. You know the little wire on the starter. Double the size and put a regular terminal and hook it to the pin at the starter with plenty of conductive grease. Fin a way to tie wrap the wire so it won't touch anything and pass it over the engine along the firewall right to the fuse box to the plug (4 cond) on the engine side. It's the plug for the wire to the solenoid. The bigger one. You can check it by removing the plug, the starter relay and check continuity. You can cut the wire or just cut the plastic and expose the wire to WELD "really important" the new wire and leave the original wire there. Isolate with electric tape and it's done. It will be better for your starter also, because the solenoid will engage promptly and forcefully preventing spark on the contacts, saving your starter. I would recommend that for any 4runner, problem or not. It's my second 4runner 2gen & 3gen and both did the same thing.
Sincerely hop that will help many of you.
Replaced both battery cables and connectors...still didn't start.
Out of frustration I started pulling and beating on all the cables going to the battery and on the starter relay fuse...mysteriously it started working.
Weird!?
Back in business for now. Thanks for everyone's help...awesome site!