David Silva scored twice as Manchester City saw off Fulham to close the gap on leaders Manchester United to four points, for 24 hours at least.
United can restore their seven-point advantage when they go to Tottenham on Sunday but City succeeded in their mission of putting pressure on their title rivals before their tough test in north London.
Fulham have won only twice away from home in the Premier League all season, and have kept only one clean sheet in their past 15 league matches.
This was a straightforward enough victory for the champions, rather than the scintillating one it threatened to be when Silva put his side ahead after just 95 seconds, but the three points were what mattered for Roberto Mancini's men.
Fulham rarely posed a serious threat other than when Steve Sidwell headed against the post in the first half but City did not make the points safe until Silva struck his second in the 69th minute.
The Cottagers' form - two wins in their last 14 games - had suggested an easy afternoon for the hosts, who certainly made the perfect start.
They opened the scoring after James Milner darted in to win possession, allowing Edin Dzeko to fire in a 25-yard shot that Mark Schwarzer could only parry into the path of Silva.
Martin Jol's side are not known for their resistance, especially on the road, but against expectations they dug in after going behind.
With City bogged down in midfield, and careless in possession, the Cottagers began to venture forward and fired a succession of crosses into Joe Hart's area.
The home side were still threatening and had glimpses of goal when Dzeko and Carlos Tevez both brought routine saves out of Schwarzer.
But Fulham came within inches of levelling when Damien Duff's cross was met by Sidwell, who was under pressure from Pablo Zabaleta but still managed to send the ball looping against the outside of the woodwork.
On the touchline, Mancini's frustration was obvious, and the home fans were also becoming exasperated by City's wasteful play.
City badly needed a second goal but continued to give the ball away in promising positions, although Dzeko did go close before half-time with a whipped shot from Tevez's pull-back.
City's pricey replacements
Man City's outfield substitutes - Joleon Lescott, Aleksandar Kolarov, Jack Rodwell, Samir Nasri, Sergio Aguero and Mario Balotelli - cost on average £21m.
Things improved in the second half, with the hard-working Tevez firing over and Kompany going close with a header from a corner.
Fulham were by this stage offering little at the other end but still retained hope of snatching a point until Silva made sure of his side's victory.
The Spanish playmaker started the move that led to the goal, and finished it too - running on to Tevez's clever dummy from Gael Clichy's pass to dink the ball over Schwarzer.
He should have completed his hat-trick moments later when Tevez sent him running clear, but this time he rolled his shot wide.
Even so, there was no way back for Fulham, and City could afford to miss more chances before the end - most notably a howler from Dzeko, who lifted the ball over the bar from six yards out.
Man City assistant manager David Platt: "I thought our performance in the second half got much better. I thought we defended well as a team, but in the second half we started to create more opportunities to score.
"David Silva had a great time last season and his recent performances have been very good. He does great things for us, but he has missed the goals his performances deserve. He got two today, and should have had three.
"Towards the end we could have got three or four, and a clean sheet is great."
Fulham boss Martin Jol: "We made plans and train to do whatever we want, but to concede in the second minute is a horrific scenario. At 1-0 down it could have been a horrible day.
"After they scored we did better, but the final ball wasn't great. If you want something here at Man City you need a bit of luck and quality, but we couldn't find that special moment. That was disappointing.
"We could have hurt them because they didn't score their second until the 70th minute and this wasn't Man City at their best."
Sorry, we were unable to load match stats, please try again.
Live Text Commentary
Full Time The final whistle is blown by the referee.90:00 +2:44
Effort from deep inside the area by Edin Dzeko clears the bar.90:00 +2:17
The referee gives a free kick against Edin Dzeko for handball. Free kick taken by Aaron Hughes.90:00 +1:37
Dimitar Berbatov is flagged offside by the assistant referee. Joe Hart restarts play with the free kick.90:00 +0:40
Edin Dzeko is caught offside. Mark Schwarzer takes the indirect free kick.89:56
Sergio Aguero has an effort at goal from deep inside the area missing to the left of the target.88:56
A cross is delivered by Gael Clichy, Brede Hangeland makes a clearance.87:28 Substitution
Substitution Joleon Lescott joins the action as a substitute, replacing David Silva.87:28
Shot by James Milner from outside the box goes high over the crossbar.85:07
Shot by Sergio Aguero from 12 yards. Clearance made by Brede Hangeland. Shot from outside the box by Samir Nasri goes wide right of the target.83:08
Shot from just outside the box by Edin Dzeko goes over the crossbar.82:04
Sergio Aguero challenges Steve Sidwell unfairly and gives away a free kick. Steve Sidwell restarts play with the free kick.80:16 Substitution
Substitution Sergio Aguero replaces Carlos Tevez.77:46
Edin Dzeko has an effort at goal from deep inside the area missing to the left of the target.76:48
James Milner delivers the ball, save by Mark Schwarzer.76:01
Free kick awarded for an unfair challenge on Brede Hangeland by Edin Dzeko. Free kick taken by Brede Hangeland.75:15
Shot from 25 yards by Carlos Tevez. Save made by Mark Schwarzer.74:08
Unfair challenge on Bryan Ruiz by James Milner results in a free kick. Matthew Briggs restarts play with the free kick.72:39
Corner taken by Giorgos Karagounis from the right by-line played to the near post, David Silva manages to make a clearance.71:55 Substitution
Substitution Mladen Petric is brought on as a substitute for Ashkan Dejagah.
The ball is sent over by Sascha Riether, blocked by Matija Nastasic.70:52
The referee blows for offside against David Silva. Sascha Riether takes the free kick.70:19
Steve Sidwell gives away a free kick for an unfair challenge on Gareth Barry. Direct free kick taken by Gareth Barry.69:49
Effort from inside the area by David Silva misses to the right of the goal.68:22
Carlos Tevez provided the assist for the goal.68:22 Goal scored
Goal! - David Silva - Man City 2 - 0 Fulham David Silva gets on the score sheet with a goal from inside the box to the bottom right corner of the goal. Man City 2-0 Fulham.66:07 Substitution
Substitution Matthew Briggs on for Kieran Richardson.64:13
Giorgos Karagounis restarts play with the free kick.64:13 Booking
Booking The referee shows Francisco Javi Garcia a yellow card.63:58
Free kick awarded for a foul by Francisco Javi Garcia on Bryan Ruiz.62:01 Substitution
Substitution Pablo Zabaleta leaves the field to be replaced by Samir Nasri.60:58
The ball is swung over by Francisco Javi Garcia, Sascha Riether makes a clearance.59:05
Corner taken left-footed by David Silva from the right by-line, Vincent Kompany takes a shot. Blocked by Brede Hangeland. Edin Dzeko takes a shot. Mark Schwarzer makes a comfortable save.55:51
The free kick is delivered left-footed by David Silva from right wing, Kieran Richardson makes a clearance.55:51 Booking
Booking Kieran Richardson receives a caution.55:34
Kieran Richardson challenges James Milner unfairly and gives away a free kick.54:30
The ball is crossed by Gael Clichy, clearance made by Aaron Hughes. Free kick awarded for a foul by David Silva on Dimitar Berbatov. Aaron Hughes restarts play with the free kick.52:45
Carlos Tevez produces a right-footed shot from just outside the area that goes harmlessly over the bar.48:45
Unfair challenge on Pablo Zabaleta by Dimitar Berbatov results in a free kick. Joe Hart restarts play with the free kick.46:54
Steve Sidwell produces a left-footed shot from just outside the area that goes wide left of the goal.45:01
The referee blows his whistle to start the second half.45:00 +1:10 Half time
Half Time The players leave the pitch at half time.45:00 +0:22
Shot from deep inside the area by Edin Dzeko goes over the bar.42:43
Bryan Ruiz delivers the ball.39:51
Free kick awarded for a foul by Ashkan Dejagah on David Silva. Pablo Zabaleta takes the free kick.35:49
Free kick awarded for a foul by Francisco Javi Garcia on Steve Sidwell. Brede Hangeland takes the direct free kick.35:37
The ball is crossed by David Silva, Brede Hangeland manages to make a clearance.33:36
Gareth Barry challenges Steve Sidwell unfairly and gives away a free kick. Giorgos Karagounis takes the direct free kick.31:49
Matija Nastasic gives away a free kick for an unfair challenge on Dimitar Berbatov. Direct free kick taken by Giorgos Karagounis.30:43
Damien Duff sends in a cross, Close range shot by Steve Sidwell bounces off the post.30:08
Shot by Carlos Tevez. Blocked by Kieran Richardson.28:58
The ball is swung over by Giorgos Karagounis.28:46
The ball is swung over by Ashkan Dejagah, Vincent Kompany makes a clearance.28:11
Unfair challenge on Damien Duff by Gael Clichy results in a free kick. Giorgos Karagounis restarts play with the free kick.27:24
James Milner produces a cross.25:45
Headed effort from inside the area by Ashkan Dejagah misses to the left of the goal.23:03
Carlos Tevez produces a shot on goal direct from the free kick.23:03 Booking
Booking Giorgos Karagounis goes into the referee's book for unsporting behaviour.22:53
Foul by Giorgos Karagounis on David Silva, free kick awarded.21:46
Bryan Ruiz fouled by Carlos Tevez, the ref awards a free kick. Bryan Ruiz takes the direct free kick.20:32
Corner taken by Giorgos Karagounis.19:45
Carlos Tevez has an effort at goal. Comfortable save by Mark Schwarzer.19:16
The ball is swung over by Kieran Richardson, Matija Nastasic makes a clearance.18:47
Dimitar Berbatov fouled by Francisco Javi Garcia, the ref awards a free kick. Direct free kick taken by Damien Duff.18:10
Free kick awarded for an unfair challenge on Giorgos Karagounis by David Silva. Steve Sidwell restarts play with the free kick.16:43
Sascha Riether sends in a cross, clearance made by Vincent Kompany.15:28
The ball is sent over by David Silva, Edin Dzeko takes a shot. Mark Schwarzer makes a comfortable save.14:19
The ball is delivered by Damien Duff, Vincent Kompany manages to make a clearance.12:52
The ball is sent over by Gael Clichy, clearance by Aaron Hughes.9:26
The ball is swung over by Gael Clichy.7:58
The ball is swung over by Steve Sidwell, Matija Nastasic makes a clearance.6:30
The ball is delivered by Sascha Riether, clearance by Matija Nastasic.1:34
Assist by Edin Dzeko.1:34 Goal scored
Goal! - David Silva - Man City 1 - 0 Fulham David Silva scores a goal from inside the area to the bottom right corner of the goal. Man City 1-0 Fulham.1:32
Shot by Edin Dzeko from 20 yards. Mark Schwarzer makes a save.0:56
Giorgos Karagounis gives away a free kick for an unfair challenge on Carlos Tevez. Direct free kick taken by Gareth Barry.0:00
The ref blows the whistle to begin the match.
Live data and text provided by our data suppliers