My three points to contribute:
1.) The heater hoses should both be hot and "less hot" to touch. If one is hot and the other is cool, then you have a blockage in the heater core. FYI.
2.) There could be flow, but not sufficient flow in the system. If the water pump is bad, water would leak out of the weep hole or the truck would overheat (from the lack of fluid flow to cool the engine block). I think the water pump is fine, but it can't hurt to check it as this point.
3.) I would look to the fan clutch. It is a coiled spring temperature gauge itself, and when it heats up to a certain point, it relaxes/extended and turns on. If this is old & worn out, it could be spinning too much of the time (cooling the radiator too much). Some vehicles overheat when the fan clutches go out.
INFORMATION: Your cooling system is a closed loop system.
If you are losing coolant, the engine will overheat.
If you have a bad radiator, the engine will overheat.
If you have blocked hoses or no flow in the main loop, the engine will overheat.
If you have a blocked heater core, you will not have any heat at all in the cab.
If you have a bad water pump, there won't be as much flow & the engine will overheat.
If you have a bad water pump (seized), there will be an excess of cooling.
If you have a bad fan clutch (seized), there will be an excess of fan-radiator cooling.
If you have a bad switch/fuse on electric fans...well, that's not your case.
I think this is it...