Andy Robertson's low drive, ten minutes from time, handed Hull City all three points in their hunt for promotion tonight in an open, entertaining affair that saw Reading awarded then denied a second half penalty by referee Fred Graham.
Honours were even at half-time after Jake Cooper had opened the scoring with a fourth minute free header connecting with Ollie Norwood's free kick, then Abel Hernandez found the equaliser when he raced onto a direct ball down the middle and slotted past Al Habsi with his left foot.
Reading have not had luck on their side of late and when the award of a penalty for a foul on Deniss Rakels was reawarded as a corner, it didn't look like it was about to change. And the Royals fell behind with ten minutes remaining when Andy Robertson scampered forward and arrowed wide of Al Habsi with a 20-yard shot that won it for Steve Bruce's side.
Royals' boss Brian McDermott made two changes to the side that lost late at Elland Road, bringing in Deniss Rakels and Anton Ferdinand for Evans and Piazon. Yann Kermorgant, who missed the last two long away trips as he waited for the birth of his newborn child, returns to the squad to take a place on the bench.
The home side began on the front foot and after some lovely link-up play between Matej Vydra, Deniss Rakels, Andrew Taylor and Stephen Quinn, could have opened the scoring in the opening minutes when the ball was threaded through to Simon Cox who cut back onto his left foot and hammered an effort on target from 10 yards out only for a Hull leg to block it before it could test the visiting keeper.
But after less than four minutes, the Royals were ahead. Oliver Norwood delivered an inswinging free kick into the Hull box and Jake Cooper rose high and unmarked to head past McGregor from six yards out.
City were full of attacking intent too and tried to bounce back immediately. Michael Hector produced two excellent blocks to thwart Steve Bruce's men with ten minutes played. And Hull were level after 18 minutes - a direct ball forward from the back found Hernandez racing in behind a high Reading back line and he passed the ball through the legs of an onrushing Al Habsi to make it 1-1.
Vydra teed up Cox to shoot from 25 yards out but it deflected off a Tigers leg and fizzed behind for a corner which Quinn delivered from the right and Cooper met with a header that span off a Hull defender and bounced wide. Norwood's follow-up corner from the opposite side found Rakels at the far post but the Latvian could only ripple the side netting with a stooping header from the tightest of angles.
Reading were lucky that the wrong option was taken midway through the half when City broke in numbers and passed it right instead of into the path of the free Shaun Maloney on the left - and then at the other end Hector won possession and fed Quinn with a lovely throughball that opened City up, but Quinn's early delivery into the box was whipped in ahead of both Vydra and Rakels.
An open affair promised more goals and Huddlestone saw an effort from range tipped over by the fingertips of Al Habsi on the half hour. And Adama Diomande scurried onto a good ball in behind moments later but under pressure could only arrow an effort wide of the bottom left corner.
At the other end a thunderous first time volley from Norwood forced a superb save from McGregor as it whistled towards the corner of the Hull net from 25 yards out. Then a low Quinn centre almost created an own goal as Curtis Davies cleared the ball against Maguire and the ball ricocheted just wide of a rooted McGregor's right post.
Half Time: Reading 1-1 Hull City
The first chance of the second half saw Cox thread a lovely ball in behind the City defence and into the path of Vydra, but the ball lacked an extra yard that would have allowed Vydra to take it into his stride and instead it got caught in the striker's feet and allowed Hull to clear.
Just before the the hour, referee Fred Graham pointed to the penalty spot in the Hull box after Deniss Rakels has scurried onto a lovely ball from substitute Kermorgant and has his shot impeded by a foul from a City defender. But after trotting over to discuss the decision with his linesman, he overruled his own decision and awarded a corner instead to the home fans' bemusement.
Rakels came close moments later, arrowing a well-struck left-footed effort inches wide of the top left corner from just inside the box.
McGregor had to save low to his left as Quinn fizzed a cross-shot into the City area soon after, then Akpom threatened but drifted offside in collecting a cross from the left before drilling an effort well over from range.
Kermorgant directed a good header from McCleary's floated ball into the box towards the goal but McGregor gathered it in on his line with a quarter of an hour remaining.
But Ali Al Habsi had to be at his best to parry away a Hernandez effort after Snodgrass had raced in behind and cut the ball back to his striker in a dangerous position.
But Reading's luck wasn't going to turn tonight and despite threatening to take the lead throughout an equally open second half, Andy Robertson rifled the visitors into the lead with little more than ten minutes left, making it 2-1 with a well-struck drive that fizzed beyond the reach of Al Habsi.
The Royals pressed for an equaliser and Norwood arced wide from distance, but Al Habsi had to shovel a save away from his six yard box as Akpom looked for an injury time goal to seal it. And our penultimate home game of the campaign ended with a win for the Tigers.
Full time: Reading 1-2 Hull City
Reading: Al-Habsi, McCleary, Taylor, Cooper, Ferdinand, Hector, Norwood, Quinn, Rakels, Vydra (Kermorgant 54), Cox (John 72).
Unused Subs: Bond, Watson, Evans, Barrett, Piazon.
Hull City: McGregor, Odubajo, Davies, Meyler (c) (Hayden 55), Huddlestone, Maguire, Maloney (Clucas 87), Diomande (Akpom 63), Robertson, Snodgrass, Hernandez.
Unused Subs: Jakupovic, Bruce, Aluko, Elmohamady.
Att: 12,949 (504 away)