I think you might have a clogged heater core. The pressure of driving it is pushing the hotter water into the core when you are driving, but with the pressure only at idle, it's not enough. Did you try flushing your heater core? Perhaps with the chemical kind that dissolves calcium build-up?
Sent from my iPad using electrons