Reading picked up three precious points with an impressive performance and win against promotion pushing Derby County.
After creating numerous chances in the first-half, the only goal of the game was scored when Paul Mukairu was well placed to slot in after Femi Azeez’s shot cannoned off the post.
The Royals stay in the relegation zone despite the win and are four points adrift of safety with a game in hand over Shrewsbury Town .
Ruben Selles made one change from the defeat at Wigan which saw Charlie Savage replace Michael Craig at the base of midfield.
The Rams visited Berkshire in strong form having not lost on the road since October and knowing that a win would guarantee them top spot ahead of Portsmouth.
Despite being opposite ends of the table, Reading put on an impressive first-half display, created plenty of chances, yet had nothing to show for it at the break.
Reading showed patience to try and break Derby down when Paul Mukairu worked the ball out wide instead of opting to take a speculative pop at goal. Femi Azeez swung a ball towards Sam Smith which was glanced wide by the striker.
Harvey Knibbs then showed his usual persistence to steal the ball in Derby’s half and fed the ball to Smith who was unable to get the ball out of his feet to get a strike away.
Instead of protests in the 16th minute as there was with a pitch invasion in the last home match, Reading came a whisker away from scoring when Andy Yiadom swivelled in the box and saw his shot bounce off the post.
The Royals continued to find space in the Rams’ half which was often led by the bursting pace of Azeez who failed to pick out Smith’s run and instead saw his pass cut out.
A lack of numbers in the box cost Reading the chance to go in front after Mukairu had done excellently to beat his full-back, but had no one to profit at the back post for what would have been the simplest of tap-ins.
The chances kept coming for the hosts when another Azeez sprung upfield again and with options both left and right, he chose to shoot and hit a stinging effort which was too hot to handle for Josh Vickers before Mukairu fired over from the rebound.
Derby’s best opening arrived in the 40th minute when Conor Hourihane looked to have beaten David Button with a curling effort only to be denied by the post as the team’s went in goalless at the break.
Paul Warne’s side looked refreshed after the restart and put some pressure on Reading as Holmes had to recover quickly to stop a dangerous cross with James Collins waiting in the middle.
But it was Reading who found the breakthrough early in the half. After Azeez’s shot rattled the post, it fell kindly for Mukairu who slotted in on the rebound through a crowd of bodies to find the net.
A first Reading change after the hour mark saw Amadou Mbengue replace Yiadom at right-back.
The Rams started to create chances in hope of finding a reply when Tyreece John-Jules flicked a header narrowly wide of Button’s far post.
Mbengue was the first player to go in the referee’s notebook after he gave away a foul on the edge of the box.
Spaces opened again for Reading on the break when Smith and Mukairu both chased down a long ball before Smith saw his shot blocked.
Selles then made a double change as Michael Craig and Clinton Mola replaced Wing and Dorsett.
Reading survived a scare when Corey Blackett-Taylor drove in menacingly from the left wing before he fired well wide as Derby failed to test Button.
A final round of home changes saw Tom McIntyre and Kelvin Ehibhatiomhan replace Smith and Azeez.
The Royals kept Derby at bay and protected their keeper who didn’t face a shot on target all night on their way to winning three points.
Next up for Reading is Leyton Orient at home on Saturday.
Reading: Button, Yiadom, Bindon, Holmes, Dorsett, Savage, Wing, Knibbs, Mukairu, Azeez, Smith
Subs: Pereira, Mola, McIntyre, Ehibhatiomhan, Mbengue, Craig, Vickers
Derby County: Vickers, Wilson, Hourihane, Cashin, Barkhuizen, Bird, Collins, Mendez-Laing, Thompson, Elder, Nelson
Subs: Wildsmith, Bradley, Ward, Robinson, Sibley, Blackett-Taylor, John-Jules
Goals: Mukairu 54’