Champions Manchester City climbed to second in the Premier League table after Carlos Tevez's fierce strike in the second half gave them a 1-0 win over Swansea City on Saturday.
Unbeaten in the Premier League, City moved on to 21 points from nine games, a point behind leaders Chelsea who play Manchester United at Stamford Bridge on Sunday.
United slipped to third on 18 points but they and Chelsea have a game in hand on City who needed a boost after a 3-1 defeat by Ajax Amsterdam in midweek left their Champions League hopes hanging by a thread.
Arsenal, who also needed a win after two defeats in the last week, beat bottom club Queens Park Rangers 1-0 with a late winner from Mikel Arteta while Reading and Fulham fought out a 3-3 draw at the Madejski Stadium.
In Saturday's other games, Wigan Athletic beat West Ham United 2-1 while Aston Villa drew 1-1 with Norwich City and Stoke City and Sunderland ground out an uninspiring 0-0 draw.
City midfielder Gareth Barry told ESPN afterwards: "It was a massive three points. Three games in seven days is always tough. It wasn't a great performance but the manager said at halftime to stay calm and we'll find our way and get a goal and Carlos came up with the goods."
The champions failed to impress against a Swansea side who enjoyed the better chances in the first half, most notably when Spanish striker Michu forced a sharp save from City keeper Joe Hart shortly after he had a goal disallowed for offside.
City improved after the break and Tevez struck with a venomous angled shot from 25 metres which nestled in the corner of Swansea keeper Michel Vorm's net.
Vorm injured himself while diving for the ball and after a lengthy stoppage for treatment he was replaced by German Gerhard Tremmel. Another long stoppage followed soon after when City defender Micah Richards went down in agony clutching his knee with no-one near him.
He was taken off on a stretcher and the match ended after almost 103 minutes, including nearly 13 minutes of stoppage time -- the longest in the league's 20-year-history.
Arsenal rose from ninth to fourth after Arteta's 84th minute goal secured the points for Arsene Wenger's men against QPR.
They have 15 points from their nine games but could end the weekend in sixth place if Everton beat Liverpool in Sunday's Merseyside derby at Goodison Park and Tottenham Hotspur win their match on Sunday at Southampton.
Arteta struck from close range, turning the ball in from the rebound after he had hit the bar.
The goal came soon after Rangers' Stephane Mbia was sent off for lashing out at Arsenal defender Thomas Vermaelen, QPR's ninth red card during 2012.
Arsenal's win halted a run of two successive defeats to Norwich City in the Premier League and Schalke 04 in the Champions League over the last seven days.
The Gunners welcomed back Jack Wilshere after the England midfielder missed the last 17 months with ankle problems and he played well for the 67 minutes he was on.
Arsenal manager Wenger told Sky Sports the victory came as a relief after a difficult week.
"When you lose two games the confidence goes quickly and for us today the most important thing was to win the game," he said.
"It was a fight against a good QPR side and a fight against our nerves. But QPR are a good team and they will not stay bottom of the league."
QPR manager Mark Hughes though, was far from happy as his side stayed bottom without a win from their nine games.
"The referee has absolutely killed it to allow their winning goal because Arteta was clearly offside on two occasions," he told the BBC.
Reading and Fulham shared the points in a six-goal thriller which left Reading still looking for their first win of the season, although they moved up a place from 19th to 18th, ahead of Southampton.
Mikele Leigertwood put Reading ahead with a long range shot after 26 minutes before Brian Ruiz equalised for Fulham in the 61st minute, three minutes after coming on as a substitute.
Chris Baird headed Fulham 2-1 up after 77 minutes but had to go off after injuring himself on the advertising hoardings as he celebrated his goal.
Three goals then followed in the closing stages as Reading substitute Gareth McCleary made it 2-2 after 85 minutes before Dimitar Berbatov looked to have scored Fulham's winner two minutes from time with a thunderous drive.
Then, almost with the last kick, Reading's second sub, Hal Robson-Kanu earned his side a point, scrambling home from close range 12 minutes after coming on.