Mason Mount finally broke the resistance of 10-man Fulham as Chelsea laboured their way to only a second Premier League win in seven games.
Antonee Robinson was sent off late in the first half for Fulham for a dangerous tackle on Cesar Azpilicueta.
Ten different players had shots for Chelsea, but they were wasteful in front of goal.
Their biggest chance before the goal was when Mount crashed a shot off the crossbar.
The England midfielder eventually proved the match-winner with a half-volley after Alphonse Areola flapped at Ben Chilwell’s cross.
The win takes Chelsea up to seventh, while Fulham – who had drawn their previous five league games – are four points from safety.
Can result help Chelsea kick-start season?
Chelsea went top of the table on 5 December when they beat Leeds. This was only their second victory in the league since then – and they sit seven points off Manchester United, having played an extra game.
Boss Frank Lampard talked about “the experience and personality of” Olivier Giroud and Antonio Rudiger when explaining their places in starting XI – and spoke of the need to “kick-start” their season.
The result came eventually, albeit not with a stellar performance.
Giroud and Chilwell both missed the target with volleys, while Hakim Ziyech had a shot well saved before Mount hit the bar.
Rudiger had a header tipped wide, Ziyech went close with a shot from the left wing and Giroud flicked an effort wide at the near post.
It looked as if the goal was never going to come before Mount finally converted with a well-hit low finish.
Substitute Timo Werner had a glorious chance to end his Premier League goal drought – going back to 7 November – late on but slotted wide at the end of a counter-attack.
Robinson red card costs Fulham
Robinson’s dismissal came during Fulham’s best spell of the game – or rather at the end of it.
Three of their five first-half shots came in the five minutes before the USA wing-back’s mistimed tackle on Azpilicueta. Some disputed whether the red card was merited, but in the modern era it was dangerous enough to justify a sending off.
It was a disastrous three minutes for Fulham because Ivan Cavaleiro had just missed their best chance of the game when, unmarked on the penalty spot, he fired over from Kenny Tete’s pass.
They ended up defending for most of the second half – with only 23.2% of the ball – although they did have chances. Harrison Reed and Aboubakar Kamara forced saves and Cavaleiro had a shot blocked by Thiago Silva.
Just when it looked like they were going to make it six Premier League draws in a row, Areola failed to deal sufficiently with Chilwell’s cross and Mount pounced.
How to play
Rate players out of 10 throughout or after the game. The rater will close 30 minutes after the final whistle.
Rating range key = Give it up = Pure perfection
- 34AinaSubstituted forBryanat 83′minutes
- 14De Cordova-ReidBooked at 69minsSubstituted forKamaraat 83′minutes
- 29Zambo Anguissa
- 33RobinsonBooked at 44mins
- 17CavaleiroSubstituted forOnomahat 79′minutes
- 19LookmanBooked at 88mins
- 28AzpilicuetaBooked at 90mins
- 6Thiago SilvaBooked at 82mins
- 5JorginhoSubstituted forAbrahamat 65′minutes
- 22ZiyechBooked at 72minsSubstituted forHudson-Odoiat 75′minutes
- 18GiroudSubstituted forWernerat 75′minutes
Match ends, Fulham 0, Chelsea 1.
Second Half ends, Fulham 0, Chelsea 1.
Attempt missed. Timo Werner (Chelsea) right footed shot from the centre of the box misses to the right. Assisted by Christian Pulisic following a fast break.
César Azpilicueta (Chelsea) is shown the yellow card for a bad foul.
Foul by César Azpilicueta (Chelsea).
Ademola Lookman (Fulham) wins a free kick in the attacking half.
Attempt missed. César Azpilicueta (Chelsea) right footed shot from the centre of the box is too high. Assisted by Timo Werner.
Attempt blocked. Mason Mount (Chelsea) right footed shot from outside the box is blocked.
Corner, Chelsea. Conceded by Harrison Reed.
Callum Hudson-Odoi (Chelsea) wins a free kick in the attacking half.
Foul by Joe Bryan (Fulham).
Ademola Lookman (Fulham) is shown the yellow card for a bad foul.
César Azpilicueta (Chelsea) wins a free kick in the defensive half.
Foul by Ademola Lookman (Fulham).
Attempt saved. Aboubakar Kamara (Fulham) right footed shot from outside the box is saved in the bottom right corner.
Substitution, Fulham. Joe Bryan replaces Ola Aina.
Substitution, Fulham. Aboubakar Kamara replaces Bobby De Cordova-Reid.
Thiago Silva (Chelsea) is shown the yellow card for a bad foul.
Foul by Thiago Silva (Chelsea).
Ademola Lookman (Fulham) wins a free kick in the defensive half.