In your situation I would:
1) Call other phone companys, explain your situaton and that you'd like to like to switch as painlessly as possible.
2) Haggle with them until you get lots of discounts and free stuff.
3) Get the name of the person you spoke to and write down what you've been offered.
4) Call T-Mobile and tell them you're cancelling because you don't like their attitude and you've found a better deal elsewhere.
5) Improvise from there.