Lampard was a kick away from his 200th Chelsea goal when he lined up a second-half spot-kick at the Etihad Stadium but Joe Hart, who stayed on after fouling Demba Ba, saved from his England team-mate.
Yaya Toure made Chelsea pay with a fine finish from inside the area and substitute Tevez made victory certain with a long-range effort late on.
The result reduced Manchester United's lead at the top of the table to 12 points but, perhaps more importantly with the title drifting away, increased City's advantage over third-placed Chelsea to seven.
Both managers had gone into the game under considerable pressure but City boss Roberto Mancini ended it far happier than Chelsea counterpart Rafael Benitez, who suffered more abuse from fans.
Benitez again put Fernando Torres and John Terry on the bench as he looked to drag City into a battle for second place, also restoring Lampard and Ba among six changes.
City were again without captain Vincent Kompany but Mancini opted to flood midfield by handing Jack Rodwell only his third City start with Sergio Aguero alone up front.
He was rewarded with a superb performance from Rodwell, who fully justified his inclusion as he attempts to ignite his City career after injury troubles.
He played a part in a positive start by City, who had their first shot within 40 seconds as Yaya Toure took aim from the edge of the area but Petr Cech saved easily.
City controlled possession with David Silva looking to pull the strings, Yaya Toure getting forward at every opportunity and Rodwell making several powerful runs.
It was some time before Chelsea threatened, but after initially being beaten, Kolo Toure recovered well to cut off Ba's counter-attack.
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 powerful header.
Rodwell had a shot blocked by Gary Cahill and Silva played in Aguero but the Argentinian overran the ball.
Lampard, looking to reach that double century by scoring for a fourth successive Premier League game, had his first sight of goal from a 30-yard free-kick but blazed well over.
The game became scrappy as Chelsea tried to regain some control and Ramires was booked for a late challenge on Yaya Toure.
City continued to look the more creative and another good chance came as Aguero pulled back a James Milner cross and Pablo Zabaleta's powerful volley was headed away by Cahill.
Rodwell then tested Cech twice in just over a minute, first forcing the keeper to tip over a powerful 25-yard drive and then heading into his arms from the resulting corner.
City went into the second half with the same determination but Aguero's acrobatic volley from Silva's cross went well wide.
The game's pivotal moment came in the 50th minute as City switched off at the back and Ba raced on to a long ball from deep.
Ba shrugged off Kolo Toure and clipped the ball past the out-rushing Hart but was brought down as he got tangled in the goalkeeper's legs.
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.
Hart made the most of the reprieve to earn instant redemption by saving from Lampard, who had scored his last 10 spot-kicks, low to his right.
He was in action again seconds later to deal with the resulting corner and City set about making sure Chelsea paid for missing their chance.
Surprisingly, Mancini opted to replace the influential Rodwell with Tevez but the resulting change in shape gave Chelsea more to think about.
The game opened up as Aguero raced through from a Milner pass and chipped just over before Ramires almost exposed Kolo Toure on the counter at the other end.
City made the decisive breakthrough just after the hour.
Milner found Silva in the box with a clever reverse pass and his pull-back found Yaya Toure on the edge of the area.
The Ivorian still had much to do but his first two touches took out two defenders and gave him space to curl a superb 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.
The changes did not bear fruit and it was not long before Torres was introduced for Mikel.
But it was City's 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.