Here, I think the big problem is less the way movement is handled and more the fact that there are traps that make handling it that way a necessity. "Play this card when a hero enters an empty space during a move action ... end his move action" could have easily been changed to "Play this card when a hero enters an empty space ... loses all remaining movement points".
I agree completely, and the basic gist of the house rules we use is to accomplish exactly that. However, rather than writing errata for specific cards (which would require us to go through every card in the game looking for those needing correction), we just laid down a set of basic principles that modify the rules as a whole. House rules, if you will. =P
I'd actually like to know the details of your house rule Steve-O. You've usually been one of the more experienced and knowledgeable players on these forums, so I'd like to know what you came up with.
Okay, here's what we're using. Note rule #5 is essentially the same as what the OP was proposing regarding Immobilize. "Pick up your figure and place it down elsewhere" is not spending MPs, likewise being forced to move by another figure's actions is not this figure spending MPs, so those things still work just fine.
1) A Move Action is now an instant effect that grants MP equal to Speed, over as soon as it is declared, and the figure may then spend those MPs throughout his turn as he sees fit. The rules for interrupting a Move Action are no longer required.
2) Any other ability that allows a figure to "move" likewise grants an appropriate number of MPs which may then be spent to move. In general, these MPs go into the same pool as "Move Action" or "Fatigue" MPs and become indistinguishable from those.
2a) If a special ability grants "movement with benefits" (ie: Silhouette) or "movement during another player's turn" (ie: Syndrael) then the MPs gained by those abilities must be spent immediately, in the course of resolving the ability itself. These MPs cannot be "saved for later" or mixed in with "normal MPs" - ie: everything else. Likewise, any ability that specifies the timing of the movement (ie: "immediately move X and then attack.")
3) Any effect that triggers "during a Move Action" is now considered to trigger when the figure "enters a space" via spending MP. Doesn't matter where the MP came from.
4) Any effect that causes a Move Action to "immediately end" is now considered to drain the figure's unspent MP pool to zero. The figure can acquire new MPs to continue moving, if possible. Used in the middle of a "movement with benefits" ability, such as Silhouette's, this drains all MP; those granted by the special ability as well as any unspent MPs from fatigue, etc.
5) Immobilize prevents the expenditure of MP. Figures can still gain MPs from various abilities if they want, but they can't spend them, and thus cannot move. Immobilize still reduces the figure's current MP pool to zero when played, per the FAQ.
6) Large figures still shrink and expand as usual. After a figure has shrunk, expanding again will zero out the figure's MP pool. Alternatively, a large figure may "interrupt" its movement to perform another action. Interrupting requires the figure to expand, but does not zero the MP pool. Akin to official rulings, the large figure must be able to perform the desired secondary action from the single space it occupies before it can interrupt its movement like this.
(Rule #6 is basically reconstructing the interrupt rules for large figures, since rule #1 removes the concept of interrupting move actions in general. This may seem like a lot of busy work to the outside observer, but our purpose was to negate the difference between "move action" movement and other types of movement by making all movement just be "spending MPs." That said, the dynamics of large monster movement really require the interruption mechanic to keep a lid on "zero-move shrink/expand" shenanigans. We don't find it too hard to follow these house rules, but we also know what we meant when we wrote them. =P)