Having given away a second-half spot-kick with a foul on Demba Ba and then avoided a possible red card, England No.1 Hart responded by saving his international team-mate Frank Lampard’s attempt from 12 yards.
That set the stage for Toure and substitute Tevez to go on and win the game and allow City to continue to cling to the hope of catching table-topping Manchester United.
United had temporarily moved 15 points clear with their win at Queens Park Rangers on Saturday but Roberto Mancini’s City reduced that deficit by three points.
Both managers had gone into the game under considerable pressure but Mancini ended it far happier than Chelsea counterpart Rafa Benitez, who suffered more abuse from fans.
Jack Rodwell made only his third City start and he played a part in a positive start by the home team, who had their first shot within 40 seconds as Yaya Toure took aim from the edge of the area but Petr Cech saved easily.
Despite their early dominance, it was 15 minutes before City really tested Cech as Matija Nastasic went forward for a corner but the goalkeeper dealt with the Serbian’s header before then doing the same from Rodwell later in the half.
City went into the second half with the same determination but Sergio Aguero’s acrobatic volley from David Silva’s cross went well wide.
The game’s pivotal moment then came in the 50th minute as City switched off at the back and Ba raced on to a long ball from deep before shrugging off Kolo Toure and being brought down by the onrushing Hart.
Referee Andre Marriner immediately pointed to the spot but importantly felt Ba was just moving away from goal and did not show Hart a card, allowing the goalkeeper to stay on and save Lampard’s penalty.
The game opened up and City made the decisive breakthrough just after the hour when Yaya Toure jinked into the penalty area before making space to curl a low finish beyond Cech and in at the far post.
Chelsea made a double change in response, with Lampard, after a frustrating game by recent standards, making way along with Eden Hazard for Victor Moses and Oscar.
But it was City substitute Tevez who made the most dramatic impact, putting the game beyond the visitors with a superb strike from outside the area five minutes from time.