When I started with Verizon, you could get a 1-year contract. This was a little over a year ago. It's just that you don't get as good of a deal on the phones (I think), and you have to pay a ~$30 one time 'start-up' fee, or whatever they call it. Kind of shitty and not worth it to do the one year, it’s a catch 22.
I think the blank spots in coverage happen with ever company, you just have to make sure one doesn't happen to be at or near your house. This will probably be true until the technology gets much better.
Get a hold of DJ and see if he can't help you out. He's one of the most customer driven people I've seen and I'm sure he will do whatever he can to keep you with T Mobile and keep you happy with them.
Personally, the only companies I've had experience with are Verizon and Sprint. Sister and mom used to have Sprint and it sucked a huge donkey wang for service (but it seems you all ready know that). I have nothing but good things to say about Verizon. Only real 'issue' I've had with them is when I first got the phone, the idiot who sold me the phone at the Kiosk gave me some services I didn't want. As soon as I got my bill I called customer service to bitch and it was immediately fixed. Any issue I've ever had has been fixed very easily and quickly by calling in. Don’t go to the Kiosk in malls, they suck. I’ve been to their store outside of Tuttle for anything past that and the people there are great. Their selection of phones is getting better, but I don't consider it great by any means. Great service too, I get service damn near everywhere.