Match ends, Reading 1, Queens Park Rangers 0.
Reading survived a stoppage-time penalty and having a player sent off as they narrowly beat QPR in Paul Clement's first game in charge.
Sone Aluko's solo strike in the first half ultimately eased their Championship relegation worries.
The Royals survived the last 10 minutes with 10 men after Yann Kermorgant saw red for a second booking.
And Vito Mannone kept out a Jake Bidwell spot-kick after Pawel Wszolek had been fouled by Dave Edwards.
Reading clung on to win for the first time in 10 Championship matches, a result that lifted them to 19th place, six points clear of the bottom three with seven games remaining.
After Aluko's third league goal of the season in the early stages, Clement saw his new side having to weather a storm.
QPR should have levelled immediately when Conor Washington failed to convert Wszolek's cross from close range and then had an effort from Josh Scowen ruled out for offside before half-time.
But the greatest drama was reserved for the closing stages as first substitute Kermorgant picked up a second yellow card for a foul on Darnell Furlong.
Bidwell then had the chance to secure a deserved point but his penalty was saved by Mannone, who also kept out the rebound.
Reading manager Paul Clement told BBC Radio Berkshire:
"I think I'm most pleased about the fight and the passion from the players. It was very much a team performance and the players put in a great shift.
"The two big moments in the end were the goal, which was worthy of winning any game and then the penalty at the end, which was a nail-biter.
"But we got the result in the end that everyone wanted and needed.
"I've only had four days to work on tactics with the players but I thought that they were up for the battle and they've got great character."
QPR manager Ian Holloway:
"It's bitterly disappointing.
"You work things into situations, you create that many chances and have that much possession away from home, you expect to win the game not just draw.
"Yes we've missed a penalty, but it was the chances.
"I think we've just got to be more clinical, more aggressive and just believe in ourselves a bit more as we don't look a bad team now."
- 4van den BergSubstituted forBacunaat 55'minutes
- 14AlukoBooked at 90mins
- 10SwiftSubstituted forEvansat 84'minutes
- 27MartinBooked at 21minsSubstituted forKermorgantat 62'minutesBooked at 81mins
- 6LynchBooked at 82mins
- 3BidwellBooked at 57mins
- 8CousinsSubstituted forLuongoat 74'minutes
- 37SmythSubstituted forEzeat 74'minutes
- 7FreemanBooked at 69mins
- 9WashingtonSubstituted forSmithat 58'minutes
- David Coote
- Shots on Target
Second Half ends, Reading 1, Queens Park Rangers 0.
Attempt blocked. Darnell Furlong (Queens Park Rangers) header from the centre of the box is blocked. Assisted by Luke Freeman with a cross.
Corner, Queens Park Rangers. Conceded by Tiago Ilori.
Attempt blocked. Luke Freeman (Queens Park Rangers) right footed shot from the centre of the box is blocked. Assisted by Matt Smith with a headed pass.
Attempt blocked. Joel Lynch (Queens Park Rangers) left footed shot from outside the box is blocked. Assisted by Jake Bidwell.
Foul by Darnell Furlong (Queens Park Rangers).
Chris Gunter (Reading) wins a free kick in the defensive half.
Corner, Queens Park Rangers. Conceded by George Evans.
Penalty saved! Jake Bidwell (Queens Park Rangers) fails to capitalise on this great opportunity, left footed shot saved in the bottom right corner.
Sone Aluko (Reading) is shown the yellow card.
Penalty Queens Park Rangers. Pawel Wszolek draws a foul in the penalty area.
Penalty conceded by David Edwards (Reading) after a foul in the penalty area.
Attempt blocked. Josh Scowen (Queens Park Rangers) right footed shot from outside the box is blocked.
Josh Scowen (Queens Park Rangers) wins a free kick in the defensive half.
Foul by Modou Barrow (Reading).
Foul by Josh Scowen (Queens Park Rangers).
Modou Barrow (Reading) wins a free kick in the defensive half.
Attempt blocked. Matt Smith (Queens Park Rangers) right footed shot from outside the box is blocked. Assisted by Joel Lynch with a headed pass.
Delay over. They are ready to continue.