Have we considered that fire may have not even been real?
When Gandalf begged Saruman for information outside Orthanc, Saruman sent down a
fireball to the new White Wizard. Gandalf astride Shadowfax was unharmed by the blast, and so:
- Gandalf is able to create a cloak of sorts that protects those so covered from fire, yet permits the fire to burn as it would on the outside, or
- Gandalf saw the fire for what it was, just another mind trick. Saruman's voice did not fool Gandalf, and though the others saw the flames, Gandalf did not and so was unharmed. There is precedent in at least two Star Trek episodes (original and NextGen), as well as in the 'Beneath the Planet of the Apes' movie, and so I feel that I'm on solid ground here.
So were the flames that burned Denethor real? Did Gandalf cloak him, to protect the Steward in his madness, but the Steward ran off before Gandalf could continue to thump him senseless? Or, did Gandalf, a quick study, learn the spell from Saruman and decide that the Steward needed a lesson, thinking that the burned hand teaches best? Again, Gandalf may have started it off with good intentions, yet did not think that Denethor would take so long a dive.