If they had killed off the subsidies they currently provide (for 2-year contracts) then that would have effectively killed off the value of the plan. Anyone holding onto unlimited data would have had to pay an extra $450 every 2-years per line!
While some would say that's fine, I personally would not stay with the same company that decided to stop reimbursing me $900 every two-years while continuing to charge me the same price for service as before.
If I had to I would have simply switch my lines to Crickets $45/mo 5gb plan for only $3,460 over a 2-year period:
$2,160 = $45/mo 5gb plan for 2 phones ($90/mo)
$1,300 = 2 unlocked iPhones bought at full retail
In your calculations, Taxes were not included for AT&T which are close to 18%. So, Cricket works out even better that way.