The Argentine, an outcast after falling out with the club in September, came off the bench with City trailing 1-0 to Gary Cahill's deflected shot and his moment of class in the 85th minute lifted City to within a point of their local rivals.
Sergio Aguero had levelled from the penalty spot for City who have won all 15 home league matches this season.
Tottenham Hotspur drew 1-1 at home with Stoke City in their first game since the FA Cup tie against Bolton Wanderers was abandoned on Saturday following Fabrice Muamba's cardiac arrest.
Rafael van der Vaart scored a late equaliser for Spurs to end a run of three league defeats but they fell below north London rivals Arsenal who won 1-0 at Everton to climb to third.
Thomas Vermaelen's first-half goal secured rejuvenated Arsenal's sixth successive league win which took them into the top three for the first time this season.
United have 70 points from 29 games with City on 69. Arsenal have 55 points to Tottenham's 54 and Chelsea, who host Tottenham on Saturday, are out of the Champions league places on 49.
Liverpool suffered a late collapse in west London, throwing away a 2-0 lead to concede three late goals and lose 3-2 at struggling Queens Rark Rangers who moved out of the relegation zone above Muamba's Bolton.
City boss Roberto Mancini, who said Tevez would never play for the club again when the striker refused to warm up in a Champions League match in Munich six months ago, called the Argentine off the bench in the 65th minute with the home side desperate for a way back into the game.
This time Tevez needed no persuasion to join the fray as he was given a rousing welcome by City's fans.
After 78 minutes Michael Essien was adjudged to have handled a shot from Pablo Zabaleta and Aguero stayed cool to beat Petr Cech from the penalty spot.
Seven minutes later Tevez showed why he used to be such a hero at the club, playing a cute reverse pass in a crowded area to Nasri who tucked away City's winner.
"I'm very happy because he did well," Mancini told Sky Sports. "I don't think he's fit 100 percent but he knows football.
"We deserved to win the game. We won because we had the desire to win. This was more than three points this game."
Chelsea's caretaker manager Roberto Di Matteo, who gave a rare start to Fernando Torres after his two goals in the FA Cup against Leicester City, looked on course for a fifth consecutive win since stepping in for Andre Villas-Boas after Cahill's 60th- minute shot deflected in off Yaya Toure.
He said the penalty that got City back on level terms was the turning point.
"We were defending well until that point," he said. "It was a bit harsh. It was a handball but I don't think he could have disappeared because he was very close to the ball as well."
Tottenham fans sung the name of Muamba at White Hart Lane, scene of the dramatic events on Saturday when the Bolton player's life was saved by medics and doctors on the pitch after he collapsed in the first half of the F
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.