Defender James Collins scored his first goal for Aston Villa to condemn Barclays Premier League leaders Chelsea to a second successive away defeat.
Martin O'Neill's £5 million capture from West Ham took advantage of slack marking to head the winner after 52 minutes.
Didier Drogba had given the Blues the lead after 15 minutes but Collins' defensive partner Richard Dunne levelled before the interval.
Blues boss Carlo Ancelotti will be frustrated with his side's defending as two corners from Ashley Young presented Dunne and Collins with free far-post headers for the goals.
It completely undermined the threat posed by his side going forward, with Deco shining in a free role behind the strikers.
But Chelsea found Villa goalkeeper Brad Friedel in inspired form with a series of excellent saves making amends for gifting Drogba the opening goal.
And Collins and Stephen Warnock also played their part in thwarting Chelsea with a series of excellent blocks.
Skipper Stiliyan Petrov was effective in the centre of the park as Villa maintained their push for a European spot. The kick off was delayed for five minutes after referee Steve Bennett was taken ill and fourth official Keith Friend stepped into the breach.
Villa striker Gabriel Agbonlahor had the first effort on goal and his shot on the turn was deflected wide.
The home side had claims for a penalty rejected when Jose Boswinga wrestled with Agbonlahor in the box in attempting to get on the end of a first time cross from Petrov.
James Milner then made a superb tackle inside his own box to deny Florent Malouda.
But after 15 minutes a rare mistake by Friedel, in his 198th consecutive Premier League appearance, allowed Drogba to put Chelsea ahead.
Drogba fired in a hopeful 30-yard drive but Friedel allowed the ball to bounce over his dive and into the corner of the net. It was Drogba's seventh goal of the campaign.
Villa tried to retaliate and Chelsea skipper John Terry made a crucial interception to cut out a low centre from Milner with John Carew and Agbonlahor unmarked in the danger area.
Chelsea were now looking the more likely to score and Ashley Cole was only just too high with a rising drive after a powerful surge forward.
But after 32 minutes Dunne struck for the second successive match to bring Villa back on level terms.
Essien was forced to concede a corner after good link up play between Agbonlahor and Petrov. Young's centre flicked off the head of Frank Lampard and Dunne was on hand to head home at the far past.
The Republic of Ireland international celebrated in a way he had declined to do when netting against his former club Manchester City 12 days ago.
Agbonlahor became the first player to be booked after 35 minutes for a challenge on Essien.
Friedel redeemed himself for his earlier error when tipping over a chip from Deco at full stretch and then made another crucial stop to deny Drogba at point-blank range.
Villa took the lead early in the second half when Collins was left completely unmarked at the far post to power a header past Cech from Young's inswinging corner.
Lampard was only a couple of feet wide with a low 20-yard drive as Chelsea tried to respond, but Friedel showed he had fully recovered from his first-half error with another excellent block on a shot from Deco, who had been put clear by Drogba.
Malouda was then denied by Friedel who beat out his fierce 20-yard shot as Chelsea searched for the equaliser.