When you click on links to various merchants on this site and make a purchase, this can result in this site earning a commission. Affiliate programs and affiliations include, but are not limited to, the eBay Partner Network.
definitely check that all cables are clean and tight, also if they are very old just replace them. its crazy how many times starting issues trace back to a bad or loose cable especially when its an intermittent problem
...the stock cables are known to corrode internally on these trucks.
+1. I know my cables are starting to corrode internally so I should have them replaced soon. I already replaced the connector ends but I have shortened them somewhat and they are starting to get a little too short. Bad connections/cables cause starting issues pretty frequently, even if the connection doesn't seem too dirty or bad, a little bit of hidden corrosion can make a big difference so cleaning all connections surely won't hurt. If that doesn't work then like others said, it's probably the solenoid (and it sounds kinda more like the a bad solenoid then bad connections, but cleaning connections is free!).
Check the small wire that connects at the starter. Clean and protect from the elements its terminal at the starter (heat shrink should come handy here).