Have you tried moving your capital city to the center of your empire? Also, garrisons don't go off troop quality but troop numbers, so a unit of peasants garrisoned in a city will give more public order than a unit of praetorian cohorts. I never use peasants for garrison myself, i find it an exploit, i use town watch...But you can use peasants if you like... Also try knocking down the enemy buildings when you capture it to recude the culture penalty, and putting up your own. The government building causes the most culture penalty, so the sooner you upgrade the city the better.
Build temples which give bonuses to law and happiness, and governors with good influence will also make the population happy. Build arenas and set the games to monthly and daily, this will help.
Also just because a city is showing a negative income it doesn't mean it is losing money, it means it is paying a very high upkeep for your armed forces. If you slaughter its population, the figure it shows may be back in the positive, but you've just burdened another large city with even more taxes to pay for your armed forces upkeep, so although you may make a lot of cash immediately from slaughtering the city, you're losing in the long run...
Bookmarks