I have a question for the OP: do you find yourself getting furious and spanking almost before you realize it, so that it's an automatic reaction, mostly because it's how you were raised? Or have you consciously chosen to spank as a method of discipline, and you're wondering about alternative methods of discipline so that you can consciously change to other things?
If it's the former, I learned not to yell (much) at DS by counting to ten breaths, then counting backwards again, whenever I felt the urge to yell. I also made a decision that wouldn't be right for everyone, but was for us at that time: I decided that whatever harm too much television did to DS, it would be less than the harm too much yelling would do. When the TV is on he tends to dance and sing and play in the living room, which is the most childproofed room in the downstairs, so he doesn't get into as much mischief, so it gives me a break even if I am sitting on the floor drawing with him, because I'm not constantly on edge knowing that any second I will need to leap up and stop him from destroying something. The excessive-TV-for-a-while approach actually broke our vicious cycle, because I yelled less, so he became calmer and better-behaved, so now we are able to cut back on TV again (which we are doing). That might not be the best approach for you, of course, but if there is something (more help from family? paid babysitting?) that could break your cycle of misbehavior-spanking-agitation-misbehavior, it could be worth a try on a temporary basis.
If it's the second (spanking as a conscious choice), from what you describe the best alternative at this age is removal and childproofing.
If you are expecting a 21-month-old to respond to verbal instructions, he must be very verbally advanced; but that doesn't make him any more self-controlled than other babies his age. Look in the Gifted Child forum for more on asynchronous development.