Here's a test I found I'll try. It might isolate your problem too. Run the truck until it warms up and then feel each of the two heater hoses to see if they're both warm or one is and the other is not. If that's the case, the heater core or a hose could have blockage it. If so, run a water hose in both ports of the core (not too strong) and see if it might blow something out. Same with the heater hoses. The fan sounds like a goofy switch.