My husband works for a company that is a one-stop shop for ALL the major service providers, so you could switch from T-Mobile to Sprint, ATT etc. and get the phone for free or for very cheap, depending on the phone you choose -- you would still have to sign up for a 2-year contract because that's how all the service providers are set up now, but at least you'd save $$ on the hardware. The other option is to stay with your T-Mobile contract but renew and get a free phone with your renewal. You do have options. Buying directly from T-Mobile's kiosk at the mall, for example, is about the most expensive way to do it.
Our Co is kind of similar in concept to the travel agency -- instead of calling each airline directly to compare prices and services, the agency does all that for you, but you pay them nothing because the airlines pay them. Same sort of deal, and you can shop for whatever phone you want and whatever service contract you want -- they are all the same as what you would get in the store.
Just a thought. If you are interested, drop me a personal message.
S. W