I think the QFE/QNH debate is as old as aviation itself.
That said, having operated both in a variety of scenarios, I would say everything favours QNH (indeed in the USA they dont call it the QNH but "THE altimeter setting"!).
Those brought up on the QFE within the general aviation sector (and I say this with all respect) are rarely taught how to conduct an altimeter tolerance check prior to take off - many is the time that I have seen pilots get the QFE from ATC/FISO/AG when they call for taxi, never to set it on the altimeter and then just set "zero". During local flying the altimeter is never reset for the rest of the flight!
Teach QNH operation from the start and there tends to be a better awareness of field/terrain elevation.
Teaching correct altimetry is rather like bringing up a child to the age of 7 years - inculcate the correct habits and you never forget. It's simple stuff but Hey Guys! get this stuff wrong in IMC and it can kill you!