Is it possible to bind and unbind keys within a macro?

My problem is that I have my movement keys (WASD) unbound on all of my alts so that I can control my main exclusively with them. I can easily make one of my alts the new main using /focus, but their movement keys require rebinding before they're usable.

I don't want to put WASD on the Do-Not-Pass list because I use them when typing messages, nor do I want to use different keys for movement that I would be comfortable adding to the Do-Not-Pass list because darnit I love WASD.

Is there a simpler solution I am overlooking?