T-Mobile gave 5G phones to all of their customers.
Gave? I mean, there are upgrade promotions on all the carriers all the time that require maintaining service in order to receive monthly credits for device payments. There are plenty of people still using non-5G phones on each carrier, including T-Mobile.
Regardless, not all 5G-capable phones are going to get VoNR support from the carriers. 5G Standalone is a prerequisite for VoNR.
The iPhone 12 models have a Qualcomm X55, which does not support NR carrier aggregation.
The X55 also does not officially support VoNR (per Qualcomm) either. Some tinkerers have been able to force the X55 to do it on some Android devices with a proprietary Qualcomm debug tool. But irrespective of that, no carriers are enabling 5G Standalone for the iPhone 12 models. The data performance of a single NR carrier would be awful compared to the current experience iPhone 12 owners are getting by being able to aggregate LTE carriers in non-standalone mode.
T-Mobile has enabled SA for the iPhone 13 and above, but has only enabled VoNR in their Apple carrier profile on the iPhone 15 (Qualcomm X70).
I had most problems with my iPhone 7 Plus. Switching to the 13 mini got rid of all of my connectivity issues.
Not surprising. The iPhone 7 series sold through AT&T and T-Mobile had the Intel MDM9645, which was notoriously bad with VoLTE. I had issues with mine dropping reverse path audio all the time, even in good signal conditions. My iPhone 6s and its trusty old Qualcomm modem performed better with voice and data calls than the iPhone 7 with an Intel modem.
The iPhone 13 mini is also a solid cellular performer in my experience. Excellent for LTE and still a very good 5G NSA device. T-Mobile has enabled SA in their carrier profile on the 13 series, and even with only 2x NR CA, it's not bad. I'd still recommend it to anyone looking for a reasonably sized now-budget phone, and should easily hold up another 1-2 years without feeling dated at all.