Match ends, Reading 1, Fulham 0.
Reading 1-0 Fulham
Reading climbed back to third in the Championship as Ali Al-Habsi saved a late Chris Martin penalty to secure a win against Fulham.
Roy Beerens had earlier put the hosts ahead just after half-time when he swept in the rebound from John Swift's saved spot-kick.
Garath McCleary went close to a second when his curling shot struck the bar.
But Fulham missed the chance to take a point as Martin saw a penalty saved for the second game in succession.
A game rearranged after thick fog forced it to be abandoned at half-time in December saw a quiet first half followed by a more expansive second.
Reading, having lost their past two league games, upped the tempo after the interval and went ahead after referee Steve Martin penalised Tim Ream for a push on Liam Moore.
Swift's penalty was saved by David Button, but Beerens reacted quickest to finish.
Fulham were twice denied an equaliser when Sone Aluko had shots inside the six-yard box blocked on the turn. But Martin missed the best chance which came after Lucas Piazon had been fouled by Moore.
Slavisa Jokanovic's side have now had seven of their past nine penalties either saved or missed. They stay ninth, five points off the play-off places, after just their second defeat in nine league games.
Reading, meanwhile, have scored five and missed six penalties this season, although five of those six have been converted on the rebound.
Reading manager Jaap Stam:
"I didn't think either penalty was a penalty. They were both light ones.
"We're lucky that we scored on the rebound and we're very happy that Ali Al-Habsi saved the other.
"It's stressful and a lot easier if you finish a penalty at the first attempt. Then at the end you concede one, but it's a great save by Ali that gets us the three points.
"We're third in the league, but we're not thinking about trying to catch the top two. We approach every game trying to win. Your team needs a mentality that you can win every game in this league.
"It's not easy for us to win every game, as we're not there yet in terms of how we're playing.
"But if we play like we did today, you've got chance to win more games then you lose."
Fulham manager Slavisa Jokanovic:
"We have missed seven penalties this season and it's a really strange situation and we have to find some sort of solution to this problem.
"I've never heard of a problem like this and it's a stressful situation for myself and the players as they pushed hard and made important chances towards the end of the game.
"Sadly, we couldn't take the best one when it was presented to us.
"I cannot blame any player, Chris takes a shot from the penalty spot and it's saved. This is the fifth different player to take a penalty and I can't blame anyone in particular for this current situation."
- 26Al Habsi
- 5McShaneBooked at 32mins
- 4van den Berg
- 24BlackettSubstituted forIloriat 69'minutes
- 38KellySubstituted forKermorgantat 85'minutes
- 7BeerensSubstituted forEvansat 85'minutes
- 12McClearyBooked at 68mins
- 15MadlSubstituted forPiazonat 45'minutes
- 6McDonaldSubstituted forParkerat 83'minutes
- 3MaloneSubstituted forR Sessegnonat 68'minutes
- 25MartinBooked at 72mins
- 30R Sessegnon
- Steve Martin
- Shots on Target
Second Half ends, Reading 1, Fulham 0.
Foul by Tim Ream (Fulham).
Yann Kermorgant (Reading) wins a free kick on the left wing.
Attempt missed. Scott Parker (Fulham) right footed shot from outside the box is close, but misses to the right.
Lucas Piazon (Fulham) wins a free kick in the attacking half.
Foul by Danny Williams (Reading).
Hand ball by Stefan Johansen (Fulham).
Corner, Fulham. Conceded by Paul McShane.
Attempt blocked. Scott Parker (Fulham) right footed shot from outside the box is blocked. Assisted by Tim Ream.
Attempt missed. Chris Martin (Fulham) header from the centre of the box misses to the right following a set piece situation.
Penalty saved! Chris Martin (Fulham) fails to capitalise on this great opportunity, right footed shot saved in the centre of the goal.
Penalty Fulham. Lucas Piazon draws a foul in the penalty area.
Penalty conceded by Liam Moore (Reading) after a foul in the penalty area.
Substitution, Reading. Yann Kermorgant replaces Liam Kelly.
Substitution, Reading. George Evans replaces Roy Beerens.
Corner, Fulham. Conceded by Paul McShane.
Stefan Johansen (Fulham) wins a free kick in the attacking half.
Foul by Liam Kelly (Reading).
Substitution, Fulham. Scott Parker replaces Kevin McDonald.
Corner, Fulham. Conceded by Joey van den Berg.
Foul by Ryan Sessegnon (Fulham).
Liam Kelly (Reading) wins a free kick on the right wing.
Attempt blocked. Garath McCleary (Reading) left footed shot from outside the box is blocked. Assisted by Liam Kelly.
Attempt saved. Danny Williams (Reading) right footed shot from outside the box is saved in the bottom right corner. Assisted by Liam Moore.
Foul by Stefan Johansen (Fulham).
John Swift (Reading) wins a free kick on the right wing.
Delay over. They are ready to continue.
Chris Martin (Fulham) is shown the yellow card for a bad foul.
Delay in match Liam Moore (Reading) because of an injury.
Foul by Chris Martin (Fulham).
Liam Moore (Reading) wins a free kick in the defensive half.
Tom Cairney (Fulham) wins a free kick in the defensive half.
Foul by Tiago Ilori (Reading).
Attempt saved. Garath McCleary (Reading) right footed shot from the left side of the box is saved in the centre of the goal. Assisted by Liam Moore.
Substitution, Reading. Tiago Ilori replaces Tyler Blackett.
Substitution, Fulham. Ryan Sessegnon replaces Scott Malone.
Garath McCleary (Reading) is shown the yellow card for a bad foul.
Tomas Kalas (Fulham) wins a free kick in the attacking half.
Foul by Garath McCleary (Reading).