They don't need to become provinces to solve these issues. Give all cities over 1M the same taxation options Toronto has and add a few so that they can better control their revenue and where it's spent. Whether we call a city a province or not is not the issue. Redirecting funding and allowing cities to implement various taxes does the same thing with a lot less effort.
Also, if you give every city over 1M provincial status, you might as well revert all province to territories, what they have left will be virtually useless - and at minimum turn all the provinces to have not, meaning all the cities would be making transfer payments to their original provinces anyways. There really is no point to solving this by creating city provinces. Cities would still be funding rural areas, this will never change.
Good points. Certainly there is some middle ground short of creating fully separate Provinces that would accomplish the same goal. A potential is to re-create Metro Toronto out of everything from Burlington to Newmarket to Courtice. Allow them to manage Provincial transportation and transit infrastructure, but leave funding for things like education and healthcare at the Provincial level.
Personally, I think either option would work, it just depends on how far you want to go in terms of 'independence'.