Default Strange LTE / 4G issues HTC One T-Mobile

My T-Mobile speeds are pretty good. According to speed test pointing to the same server my speeds for the last few months were

4g (non-lte) up to 15 down, up to 5 up
LTE 35-50 down, 20-25 up


Yesterday I had issues with LTE, it was around 5 down. I thought too many people must have gotten T-Mobile in my area
Then I tested it again at night, same deal. I switched to 4g hspa (GSM\WCDMA Auto) and my download was crazy fast, up to 25mbps, while up was still under 5. Then I tried switching back to LTE (GSM\WCDMA\LTE Auto), but the icon wouldn't change to LTE. My samsung sitting a few inches away was showing LTE, but I didn't test samsung because it has used all high speed data. I rebooted the phone, still showed 4G, not LTE. Then I pulled the sim out of HTC One and put it in Nexus 5 - Nexus showed LTE right away and tested at over 35mbps. Put back into HTC One - this time LTE showed up, but speeds were still less than 5. (I did all tests at exact same place, with the phones laying in the same spot on the desk). I called T-Mobile tech support - no help
Then I took HTC One closer to the window, and speed went up to 30. Put it back on the same spot on the desk and speeds are fine, over 30. Tested 4g hspa - under 15. Today, speeds are up to 50, while 4g hspa again under 15.

What's the deal? Did T-Mobile guy do something? Hardware issue with my HTC One?

To summarize:
1. When LTE on HTC One was very slow, HSPA was very fast and Nexus 5 LTE was very fast (I didn't not test Nexus hspa unfortunately)

2, When switching from LTE to 4g hspa, switching back didn't work. Rebooting didn't help either. Trying the same thing today - it works but takes a while. I noticed if I switch from 4g hspa to LTE and then switch wifi ON and then OFF, LTE comes back right away. But without toggling WIFI it takes over a minute.

3. One other interesting thing - when I place a call LTE switches to 4g. After you hang up it switches to LTE, BUT -
On HTC One - it switches right away!!
On Samsung - always takes a little time. maybe even over a minute
On Nexus 5 - sometimes a few seconds, other times up 5 minutes!!!!

Why HTC One is able to switch to LTE right away, while Nexus 5 may take up to 5 minutes? is there an easy way (via some program) to force Nexus and Samsung to switch right away?

Thanks.

P.S. Another issue with HTC One - wifi is much weaker when further away from the router. I'd get 5mbps where Nexus 5 and Samsung would get 15-20. I had same issue with my previous nexus 5 but my new nexus 5 seems to be much better on wifi now. I know it has a lot to do with the router and replacing the router may fix the issue, BUT from my experience phones that aren't ok with home router may not be OK with public wifi either. I tested the public wifi with my old nexus 5, it was 30-50% slower than samsung.