Injury time winner denies brave RoyalsReading were denied a point at the Riverside by an Adam Forshaw winner with the final kick of an enthralling encounter against Middlesbrough, a strike that sent Aitor Karanka's men top but proved a cruel end for a Royals side that deserved their draw.
Emilio Nsue slotted the hosts into a 10th minute lead when he pounced on an instinctive save from Al Habsi that had denied Jordan Rhodes second earlier, and although Williams, Cox and McCleary came close to an equaliser before the break Aitor Karanka's men went in ahead at the interval.
Simon Cox levelled matters though with a coolly finished chip from close range after Konstantopoulos had spilled substitute Andrew Taylor's low drive from range. And an end to end encounter ensued as both sides looked for a winner, which came for Boro with the final kick of the game - substitute Adam Forshaw finding the net after a Gaston Ramirez corner couldn't be cleared.
Royals boss Brian McDermott made just one change to the side that started our home defeat to Birmingham City at the weekend, naming Matej Vydra in his eleven in place of Yann Kermorgant who didn't make the squad for the trip to the Riverside. George Evans returned to take a place on the bench.
The first chance of the game fell Boro's way when Emilio Nsue's hooked effort from distance took a deflection off Cooper and spun over Al Habsi's bar for a Boro corner that was calmly cleared as the evening mist rolled across the Riverside.
And three minutes later, the promotion-chasing hosts took the lead. Nice build-up play led to an attack down the left through George Friend and his low cross was met by Jordan Rhodes but initially saved instinctively by Al Habsi and perhaps the help of the left upright. But the ball rebounded into the path of Nsue who slotted home from close range to give Boro an early lead.
Reading looked to respond and Piazon fed Cox in space, but the forward wrapped a right boot around it and arrowed wide from just outside the Boro box. But the Royals' evening got worse when Chris Gunter had to hobble off after 20 minutes with an injury.
Al Habsi was down well to smother a low Downing effort from 20 yards out, then Quinn delivered a dangerous ball from the left at the other end that both Vydra and Williams almost got on the end of.
Piazon then found Williams' run to the edge of the area, but the midfielder's touch to go round the last man was too heavy and Konstantopoulos came off his line to gather the ball in.
The Royals were playing some neat passing football in the final third, but with a goal's advantage Boro could defend in numbers and Cox lashed an effort high over the bar from just outside the area midway through the half.
Cox again took aim moments later, this time ending a swift counter attack with a driven effort that skidded inches wide of the bottom left corner and Konstantopoulos' sprawling dive.
Boro continued to pose their own threat though and another searching cross from the left was glanced goalwards by Rhodes but straight at Al Habsi who did well to hold onto the ball at the first attempt.
With six minutes of the half remaining, Middlesbrough came close to a second when they stole possession following a slip from Norwood in midfield and broke at pace. McShane delayed Adomah enough to make his shooting opportunity as difficult as possible but it took a very good save from Al Habsi to turn it round his right post.
Friend swept a deflected effort from 25 yards just wide of the Reading goal from the resultant corner, then at the other end McCleary cut in from the left to arrow a powerful right-footed effort just over the crossbar.
In one minute of added time, Williams saw a chance open up for him after McCleary's direct ball had been cleared only as far as the midfielder just inside the area. But the US international's shot deflected off a Boro body and spiralled wide.
Half-time: Middlesbrough 1 Reading 0
Reading began the second half without either of the full-back they started with - Obita made way for former Boro left-back Andrew Taylor at the start of the second period.
And the home side attacked down the right to carve open a great opportunity for Adomah early after the restart, Ritchie De Laet powering down the wing and cutting a low ball back for Adomah who miscued his effort completely.
Taylor twice nearly opened up the Boro defence soon after. His low cross into the box from the left couldn't be controlled by Vydra in the middle but Taylor whipped it in again and this time Cox at the near post flicked it goalwards only for Konstantopoulos to deflect it wide of the bottom right corner.
Quinn tried his luck from range but couldn't test the keeper, then on the break Reading almost unlocked the hosts' defence once more, Williams releasing Vydra who forced a corner.
And Reading deservedly drew level after 54 minutes. Taylor drilled a low effort at goal from 22 yards out and Konstantopoulos couldn't hold the left-back's effort. Three Reading players lined up to convert the rebound and Cox won the race, calmly dinking the ball over the floored keeper from close range to make it 1-1.
Downing came close to restoring Middlesbrough's lead but his deflected drive was saved by the body of Al Habsi and the ball span behind for a corner that eventually Reading cleared under pressure from a Boro team chasing top spot this evening.
Gaston Ramirez came off the bench and with his first touch fired a free kick into the arms of Al Habsi. Then a viciously inswinging corner from Downing was headed down by Gibson and turned over by the fingertips of Al Habsi.
The Royals stopper did very well to turn a Clayton cross, delivered with the outside of the boot, over his crossbar as it threatened to dip in.
It was end to end stuff and John stood up a deep cross for McCleary to head goalwards but it was easily saved by Konstantopoulos on his line as the wing back couldn't generate the power to trouble the Boro stopper.
Al Habsi palmed a Downing effort away to safety with ten minutes remaining as pressure mounted on the visitors' goal. Cooper tracked Rhodes' run with five minutes left and stayed strong to block his shot with a left leg.
Al Habsi again was in action with two minutes left on the clock - he clung onto a well-met header from late substitute David Nugent who got the ball on target with a close range nod that threatened to win if for the home side.
Four minutes of added time were signalled, prompting a final rally from the hosts and a vociferous Riverside faithful - but Reading had a glorious chance to nick it. Quinn threaded the ball through to Vydra who, with only the keeper to beat, lashed over the bar from 15 yards out.
And instead Boro stole it with the final kick of the game. A Ramirez corner wasn't cleared and after pinball inside the Royals box it was Forshaw who found a way through with a fine near post finish to win it. A cruel, cruel end to an entertaining encounter.
Full-time: Middlesbrough 2 Reading 1
Middlesbrough: Konstantopoulos, De Laet, Ayala, Gibson, Friend, Leadbitter (c) (Forshaw 59), Clayton, Nsue (Ramirez 67), Downing, Adomah, Rhodes (Nugent 87).
Subs: Agazzi, Kalas, Ramirez, De Sart, De Pena.
Reading: Al Habsi, Gunter (McCleary 21), Obita (Taylor HT), Cooper, McShane (c), Norwood, Williams, Quinn, Piazon (John 60), Cox, Vydra.
Subs: Bond, Evans, Hector, Rakels.
Yellow: Cooper, Taylor.
Referee: Mr S Duncan