Tottenham 2 Chelsea 4
Manchester United 4 Stoke 2
West Brom 1 Manchester City 2
Norwich 1 Arsenal 0
West Ham 4 Southampton 1
Fulham 1 Aston Villa 0
Liverpool 1 Reading 0
Swansea 2 Wigan 1
The Gunners, who included England midfielder Jack Wilshere in the squad after more than a year out with injury, were second best all afternoon as Grant Holt's scrambled effort on 20 minutes following a mistake by goalkeeper Vito Mannone proved enough for all three points to move the hosts out of the relegation zone.
Arsenal, who have now lost two of their last three league games, were well below the usual fluent best and created very few openings as for once the Premier League's second-worst defence held firm.
Earlier, Juan Mata scored twice in two minutes to crush Andre Villas-Boas' hopes of exacting revenge on his former employers Chelsea as the table-topping Blues beat Tottenham 4-2 at White Hart Lane.
A comprehensive away win looked on the cards as the Blues dominated a poor Spurs team in the first half, taking the lead through a fine Gary Cahill volley.
Villas-Boas, sacked by Chelsea 226 days ago after a dismal eight-months in charge, inspired a turnaround in his team's fortunes as Spurs surged ahead through William Gallas and Jermain Defoe, before the Blues stunned their former manager with two goals nearly 20 minutes from the end.
Much has been made of the impact of Eden Hazard and Oscar since they arrived this summer, but it was Mata, signed by Villas-Boas last season, who settled the game with two clinical strikes.
The Spaniard scored his fifth of the season after pouncing on another poor Gallas clearance, and then made it 3-2 soon after with a clever finish from Hazard's pass.
Roberto Di Matteo, Villas-Boas' right-hand man last season, then punched the air with glee when Daniel Sturridge made it 4-2.
Substitute Edin Dzeko scored twice in the final 10 minutes to earn 10-man Manchester City a last-gasp 2-1 victory over West Brom at The Hawthorns.
It looked set to be another disappointing day in City's stuttering title defence when James Milner was sent off for fouling Shane Long as the last man in the 23rd minute and Long gave the hosts the lead 67 minutes in.
Dzeko only entered the fray in the 79th minute but immediately tied things up and two minutes into injury time he converted Sergio Aguero's pass for an unlikely three points.
City remain four points behind Chelsea as do Manchester United after they came from behind to beat Stoke 4-2.
Wayne Rooney was in the wrong place in the 11th minute as he diverted Charlie Adam's free-kick into his own net but he made amends with his first Premier League goal of the season to level up 16 minutes later.
It was a straightforward header from Rooney from a lovely Robin van Persie cross, and the Dutchman made it 2-1 with a goal a minute before half-time.
Danny Welbeck grabbed a third just after half-time and, although Michael Kightly gave Stoke hope with a solo effort in the 58th minute, Rooney made it 4-2 seven minutes later.
Liverpool managed their first home win of the season, 1-0 against struggling Reading, courtesy of a first Premier League goal from 17-year-old Raheem Sterling.
The teenager became the eighth-youngest goalscorer in Premier League history when he netted in the 29th minute and the youngest Liverpool scorer since Owen.
Southampton's leaky defence cost them again as West Ham raced to a 4-1 victory at Upton Park, with all the goals coming in the second half.
It took the hosts less than three minutes of the second half to take control, Mark Noble and Kevin Nolan netting, but Adam Lallana pegged them back in the 63rd minute.
However, Jose Fonte handled in the 72nd minute to give Noble the chance of a second from the spot before Modibo Maiga scored his first Premier League goal three minutes from time.
Two out-of-form teams met at the Liberty Stadium and it was Swansea who ended their five-game winless run with a 2-1 victory over Wigan.
Pablo Hernandez broke the deadlock in the 65th minute and Michu added a second two minutes later. Emmerson Boyce netted with a neat back heel to make it three goals in five minutes but Wigan could not find an equaliser.
It was a quiet afternoon at Craven Cottage for 84 minutes but Chris Baird ensured it was Fulham who took the three points with a 1-0 victory over Aston Villa.