Christian Benteke put Villa in front in the first half with his 19th league goal of the season and Chelsea looked in real trouble when midfielder Ramires was sent off for a second caution just before halftime.
The European champions looked flat and lethargic but the turning-point came in the 58th minute when Benteke was dismissed for a second booking.
Lampard equalised with a crisp left-foot shot two minutes later and the England midfielder went past Bobby Tambling's record of 202 Chelsea goals when he slid in for the winner in the 88th minute.
Visiting captain John Terry was carried off on a stretcher in the 72nd minute with his left leg in a brace after being hurt in a collision in Villa's penalty area.
Chelsea occupy third position with 72 points and one game to go, five points ahead of Arsenal and six clear of Tottenham Hotspur who both have two matches left.
- Sports & Recreation
- Christian Benteke