I experienced the same symptoms (blower running at one speed) on my 2001 325i. Searching the web I found an off-beat article about
Resetting the FSU:
http://www.refrigerants.dupont.com/S...acs_200506.pdf
See page 5: The Final Stage. I know - hard to believe finding BMW advice from a dupont website, but I tried this (pull Fuse 50 and replace)
and it worked! 
. Apparently the FSU is an electronic speed controller and is powered even when the key is Off; so you need to pull the fuse to reset.
A lot less time and $.
As the FSU design is probably similar on other models one might try pulling/replacing the appropriate blower fuse on non-E46s: refer to the fuse list by the fuse panel.
Best of luck,
Mike