Crap, I just wrote you like a page on this and the app crashed and lost all of it.
In short, it's definitely impossible. The GSM phones do not support any CDMA2000 2.5/3G frequencies which is what the US CDMA carriers use exclusively for voice and SMS.
Even if the T-mobile model supported the necessary frequency bands / CDMA2000 standard, Sprint would never allow it on their network. Sprint and Verizon only allow their own carrier branded phones on their networks. They each have a database of IMEIs for every phone they've ever sold. If your phone isn't on the list, they won't allow it on their network PERIOD. It doesn't matter if it's fully hardware compatible. They want to control every aspect of your mobile experience to extort more money out of you.