(CNN) -- Chelsea extended their lead despite dropping points at home for the first time this season, as second-placed Manchester United suffered a shock 1-0 defeat by visiting Aston Villa on a day of upset results in the English Premier League.
Chelsea were held 3-3 by struggling Everton but went three points clear as Villa moved up into third with their first win at Old Trafford in 26 years to hand United a first home reverse in the league since March.
Villa moved above Arsenal, who play seventh-placed Liverpool on Sunday, thanks to Gabriel Agbonlahor's first-half goal, while Tottenham dropped to sixth after a 1-0 home defeat by lowly Wolverhampton.
In another surprise outcome, big-spending Manchester City had to come from behind three times to draw 3-3 at second-bottom Bolton as striker Craig Bellamy was controversially sent off for diving.
Carlo Ancelotti's Chelsea, who lost to City last weekend and were held 2-2 by Apoel Nicosia of Cyprus in the Champions League on Tuesday, went behind in just the 12th minute when Louis Saha's header hit a post and rebounded into the net off the back of goalkeeper Petr Cech.
It was the first league goal the Londoners had conceded at Stamford Bridge since the opening day of the season, and they hit back five minutes later as Ricardo Carvalho and Frank Lampard combined to set up Didier Drogba for the striker's 17th goal this season.
France forward Nicolas Anelka made it 2-1 from close range on 23 from Carvalho's pass after Lampard's corner was not cleared, but Everton substitute Yakubu -- on for the injured Jo -- leveled five minutes into first-half injury-time as John Terry and Carvalho failed to deal with a throw-in.
Ivory Coast star Drogba netted again 13 minutes after the break from Branislav Ivanovic's cross, but Everton earned a point in the 63rd minute as Saha was again involved in a comical incident when Drogba headed Johnny Heitinga's free-kick into the back of the France striker and into Cech's net.
Manchester United went into the game against Villa with star strikers Wayne Rooney and Dimitar Berbatov back from injury as midweek hat-trick hero Michael Owen stood down, but they were upstaged by England World Cup hopeful Agbonlahor.
The young Villa forward headed the only goal from Ashley Young's right-wing cross in the 21st minute, and has now scored against United in four successive seasons.
United had been bolstered defensively by the return of Nemanja Vidic and Wes Brown, but showed little penetration up front until Alex Ferguson brought Owen on at halftime.
Rooney hit the crossbar and Berbatov squandered a great chance, while Vidic had a header cleared off the line by Stewart Downing with 10 minutes left.
Tottenham's inconsistent run continued as Kevin Doyle's third-minute header was enough to lift promoted Wolves out of the bottom three to leave the home side winless in four matches since thrashing Wigan 9-1.
And Spurs fullback Benoit Assou-Ekotto faces a possible investigation after being involved in an ugly incident with a fan after the match, as the Cameroon international had to be dragged down the tunnel by assistant manager Joe Jordan.
Manchester City moved to within a point of Tottenham, having played one fewer match, as Carlos Tevez scored twice to rescue a point at Bolton -- their eighth draw in the last nine league outings.
Ivan Klasnic also netted a double for the home side, with Bellamy booked for the first time for dissent after the Croatian striker's 11th-minute opener.
Klasnic's second put Bolton 3-2 ahead in the 52nd minute, and Bellamy was dismissed 12 minutes later as referee Mark Clattenburg ruled he had gone down on purpose under a challenge from Paul Robinson.
Both team's managers, however, insisted that the official had made a mistake in post-match interviews.
City bounced back though, as Argentina forward Tevez scored his eighth goal of the season from 20 yards in the 77th minute, and substitute Robinho missed a late chance to score the winner.
Bottom club Portsmouth snatched a 1-1 draw at Sunderland, but Younes Kaboul received a second booking for celebrating the injury-time equalizer that canceled out Darren Bent's 23rd-minute close-range opener.
In-form Birmingham moved up to eighth place as Lee Bowyer scored the only goal against his former club West Ham, who dropped back into the bottom three.
West Ham hit the post through Kieron Dyer, but Mark Noble was sent off with 12 minutes to play.
Fulham drew 1-1 at Burnley as Bobby Zamora put the visitors ahead with his seventh goal of the season before Wade Elliott leveled with a volley.
Stoke held on to draw 2-2 at home to Wigan as goalkeeper Thomas Sorensen saved a last-minute penalty from Hugo Rodallega.
Honduran defender Maynor Figueroa had put Wigan 2-1 ahead in the 72nd minute with a stunning free-kick from inside his own half to embarrass Sorensen, but Ryan Shawcross equalized two minutes later.