First, keep in mind that in M&B cities and castles have also different functions and they try to reflect that in their markings. It makes no sense to have Minas Tirith being handled as castle when the whole government is sitting there and you can't raise up the needed buildings while Osgiliath, a totally ruined place, is handled as city without any civil population at all.
Second, the city of Minas Tirith was originally a fortress, yes, but became the new capital of Gondor. They have enough civil population to call it a city. In the books you will find these names for Minas Tirith too:
- Mundburg 'guardian fortress'
- Stone-city
- the City of Gondor
- the City of the Men of Gondor
- the City of the Kings
- the Guarded City
- the High City
Not to forget: The White City. I think they are fine with calling it a city ^^
Osgiliath, on the other hand, is a ruin with no civil population at all. Calling that a city makes not really sense.