Carlos Tevez kept alive Manchester City's slim hopes of retaining their Barclays Premier League title with the only goal at relegation-threatened Aston Villa.
Tevez, who replaced knee injury victim Sergio Aguero, broke the deadlock in first-half injury-time after a mistake by Villa defender Ciaran Clark.
Victory again cut runaway leaders Manchester United's advantage to a still formidable 12 points with only 10 games remaining.
City goalkeeper Joe Hart was unconvincing when attempting to punch clear a cross from Joe Bennett while Matija Nastasic did well to deal with a cross from Gabriel Agbonlahor when under pressure from Christian Benteke.
Benteke was causing plenty of problems in the air and climbed above the City defence to head over an Ashley Westwood corner before the champions were indebted to Tevez clearing a Benteke header off the line after 22 minutes from a Charles N'Zogbia centre.
City regrouped and Jack Rodwell forced Villa keeper Brad Guzan to tip over a shot from a narrow angle. But it was his last contribution, with the former Everton player picking up some sort of injury in the Villa box and he was replaced by Edin Dzeko.
Guzan then palmed a curling drive from Pablo Zabaleta on to a post.
Tevez broke the deadlock in first-half injury-time with his 11th goal of the season. Clark was caught in possession by Dzeko when trying to be over-elaborate and appealed in vain for a foul as he threaded the ball through to Tevez, who kept calm and cut back inside the box before slotting past Guzan.
Matthew Lowton cleared a shot on the turn from Tevez off the line after he had been teed up by Dzeko.
Then Yaya Toure's angled low shot hit the post and Dzeko had strayed offside before converting the rebound.