Thanks for the response. I had suspected there may have been some design reason why what I described was in fact the way it was supposed to behave (i.e. this is more of a ‘gotcha’ than a bug!)
I will think of some specific solution for my game. In my set up, the press and release toggle between a ‘move around’ state, as I am making a strategy game with a mouse cursor, so I don’t want to the screen to start rotating on mouse-movement unless the player explicitly tells it to by holding down the mouse cursor. Interestingly, from the code in the link to the last time this question was asked, I seem to be in almost exactly the same scenario as the previous person who wanted to implement this behaviour.
My solution is to explicitly poll whether both keys are still down on the axis events triggered when this ‘movement mode’ flag is on; and to manually call the release function if they are not. I didn’t want to implement this as a ‘hack’ until I was sure that the engine was indeed behaving as it should be! I will have to think more carefully how to make sure this approach continues to work if other keys are also bound to the ‘toggle’ action - but in lieu of a generic solution, I can certainly make this work for some particular key chord.