Often there is a large stud under the hood that is a junction for devices on and near the dash. That stud will have several ring terminal/wires attached with a large cable going back to the battery. Check they are all free of corrosion, first disconnect the batteries, and clean them all. While you're at it, check all the heavy duty relays you can find. You can get packs of 5 Bosch type 40A, 14V relays for under $10 these days. Might be time to change out a few.
As a test, you could just bonk one relay at a time with a small rubber mallet to see if the fans come on.
To me, it sounds like you have either a bad/dirty terminal, or bad relay.