Wolves returned to the top of the table but their goalkeeper was made to work very hard to earn the visitors three points at Madejski Stadium; John Ruddy, the post and a goalline clearance denied a Royals side who were unfortunate to leave the field without reward.
- Ruddy pushes Swift's first minute strike against the woodwork
- Ivan Cavaleiro beats the offside trap to scurry onto Jota's pass and slot home
- Ruddy denies a deflected Barrow shot then brilliantly saves from both Barrow and Aluko, who also has one cleared off the line
- Doherty turns his man and drills low under Mannone to make it 2-0 late on
Jaap Stam was able to name Yann Kermorgant as a starter for the first time this season, while Tiago Ilori and Joey van den Berg also returned to the starting line-up following their respective head injuries. Former Wolves striker joined ex-Wolf Dave Edwards on the bench.
Wolves were lucky not to fall behind twice in the opening ten mimutes. First, John Swift collected the ball from Van den Berg and unleasshed a swerving 25 yards effort that Ruddy couldn't hold onto - but the ball skidded off the keeper's gloves and struck the right post to Wanderers' relief.
Then Ruddy got away with a clearance which struck Mo Barrow but ricocheted agonisingly wide of the other upright and the game remained goalless.
But against the run of play, Wolves broke the deadlock. A threaded pass from Diogo Jota in behind the Royals' back line found Ivan Cavaleiro who had sprung the offside trap. Through one on one with Mannone he waited for the Italian to commit himself and cooly rounded the goalkeeper to pass home from six yards out.
Bacuna was booked for a frustrated kick of the ball after conceding a free kick, but Boly was not cautioned when cynically barging into Kermorgant who was bursting towards goal moments later. And Mannone needed to save from Cavaleiro at his near post after Jota had broken down the left into acres of space.
With half an hour played, Stam made an early change. Ilori was replaced by Dave Edwards. And with almost his first involvement in the game he won a corner. Beerens intercepted a loose pass and played in Edwards who was challenged just as he looked to pull the trigger.
Appeals for a penalty were dismissed despite Bennett bundling over Kermorgant as he looked to connect with a Bacuna cross into the penalty spot. And although the hosts showed plenty of endeavour in trying to get level, Nuno Espirito Santo's side led at the interval.
Half time | Reading 0-1 Wolves
The Royals began the second half on the front foot and shots from Moore and Edwards were charged down in quick succession before a cross was swung in from the right. Ruddy couldn't claim it cleanley but Barrow was unable to find a route to goal inside a crowded Wolves box.
A brilliant tackle from McShane stopped Jota in his tracsk as he scampered into the box along the byline and Reading repelled three corners in quick succession as Wolves looked for a second.
An hour on the clock and Swift won a free kick which Kermorgant stood over. The wall did its job and as it dropped for Swift, the midfielder attempted a speculative left-footed volley that sailed well high and wide of the target.
Barrow forced a cynical foul from Bennett who barged him over as he looked to break down the left at pace - and Bennett picked up a yellow. Soon after, Jaap Stam introduced Sone Aluko for the tiring Kermorgant.
Wolves were looking for a second to kill the game as spaces opened up, Jota flashing a low cross across the face of goal from the left before Bonatini dragged a right-footed effort just wide from the edge of the area.
But Reading came close to a leveller when Van den Berg won a free kick which Swift floated into the unmarked Moore at the back post. Moore aimed a header back across goal and Wolves bundled it behind for a corner as Barrow lurked.
Barrow took aim from 20 yards out next and Ruddy did just enough to save his deflected effort and prevent a corner, even though it looked like in trying to retrieve the loose ball he took it over his byline.
Ten minutes left on the clock and Ruddy produced a fabulous reaction save to deny Barrow. Beerens has raced onto a good pass down the left and squared the ball to Barrow in the middle, but he swept a first time left-footed shot at goal only to find Ruddy's outstretched right arm.
Aluko tried to convert the follow up and did well to take a touch and stab an effort towards the bottom right corner, but a toe on the line from a defender was enough to turn it around the post and behind for a corner.
Ruddy was equal to a strike from Bacuna with seven minutes left to play and time was running out for the Royals, who introduced Jon Dadi Bodvarsson in search of a deserved equaliser.
And they came so close again when Aluko rifled a low effort at goal only for Ruddy to save with his right leg this time. McShane won it back but Edwards and he both got in each other's way in trying to stab a follow-up effort at goal.
But the points were heading back to the Black Country and Wolves heading back to the top of the league when Doherty turned inside the box and drilled under Mannone to make it 2-0 in the final few minutes.
Full time | Reading 0-2 Wolves
Reading: Mannone, McShane (c), Gunter, Ilori (Edwards 30), Moore, Van den Berg, Bacuna, Swift, Barrow, Beerens (Bodvarsson 81), Kermorgant (Aluko 66).
Subs: Jaakkola, Blackett, Richards, Clement.
Yellow: Bacuna, Van den Berg
Wolverhampton Wanderers: Ruddy, Boly, Bennett, Coady, Doherty, Vinagre, Neves, Saiss, Cavaleiro (N'Diaye 79), Jota (Costa 85), Bonatini (Enobakhare 72).
Subs: Norris, Batth, Price, Miranda.
Yellow: Doherty, Bennett
Goals: Cavaleiro 16, Doherty 87
Referee : Mr R East
Att: 20,708 (3,872 away)