same engine here, my points..
temp up to half after 5 mins of idle...yep sounds ok same as mine depending on how hot the day is..
the internal heater matrix gets its heat from the coolent in the engine...so relys on the pump to pump it all round...the pump works on engine speed...but i cant think of a reason why idle isnt enought speed to pump round the engine but 2k is...after all if the pump works at 2k i see no reason it wont work at 800.ide speed
also no matter how fast the pumps going the m20 engine shouldnt ever fall below half way on the temp scale unless its just been started.
there is only one pump...so id guess thats playing up..when was it last changed as it is a service part...ie ur supposed to change it every so many miles reguardless of if its broke..because basically it will do eventually
but see what everyone else says