Sprites are always going to be slow with DBC, even regular 2d images. You basically have three solutions:
1. Do everything you can in other parts of your game to speed it up(look in Jess's thread).
2. Instead of sprites use images and write your own transformation functions (eesh).
3. Use textured plains as a substitute.
These are my first impressions, of course I didn't have time to chekc your code out in detail, gotta run to marching band practice, so wait for some other guys to post who have looked more thoroughly through your code.
Crazy Donut Productions, Current Project: Project Starbuks
Sony stole our name!