Boro came from behind to secure a hugely important victory at the Madejski Stadium.
On a night that Hull City, another side battling to beat the drop, fell to an 8-0 defeat at Wigan, Boro showed great resolve to fight back from behind and best Reading.
The teams traded blows in the early stages, and the first Reading corner saw penalty box pinball and Boro bodies on the line, George Saville and Djed Spence combining to block and clear.
The Teessiders’ first effort on goal came from a free-kick won by Spence on the edge of the Reading area. Marcus Tavernier lined it up, but curled his strike over the crossbar.
Ashley Fletcher saw a tame shot saved by Rafael Cabral after George Friend had pinched possession, then Patrick Roberts had his first run at goal only to be denied by a well-timed tackle.
It was Reading’s turn to come forward, and this time made a set piece count. The corner came in and was flicked on at the near post, allowing Royals captain Liam Moore to blast in from close range.
The game began to open up as Boro sought an equaliser, and twice within a matter of minutes, Anfernee Dijksteel was on hand to sweep up a quick Royals counter, the second with the assistance of Boro keeper Aynsley Pears.
Tavernier then sent in a delicious cross from deep on Boro’s left, it was perfect for Spence to attack at the back post but the youngster’s header came across goal and wide.
There was more danger at the other end as John Swift set his sights and sent in a dipping drive from distance - to Boro’s relief it hit the post and bounced away.
And Boro did restore parity before the break.
A dangerous low cross from Marvin Johnson was sliced over his own crossbar by Gabriel Osho. The resulting corner kick came back out to Patrick Roberts, who whipped in a cross which was deftly headed into the bottom corner by Ashley Fletcher.
Into the second half, and bodies began to tire but the Boro resolve never faded.
The Royals snatched at a few half-chances in the early stages of the second period, but our defence stood firm.
Marcus Tavernier, full of running all night, carried the ball great distances before Fletcher collected, rifled one with power and forced Cabral into a smart save.
That was the striker’s last action as he was replaced by Britt Assombalonga.
The substitute forward looked to stretch the Royals backline, and as he did worked space for Patrick Roberts down Boro’s right. The winger did all the hard work as he jinked into the area, but his strike was tame and easy for Cabral.
It looked to be the chance of the half, but thankfully another would come his way soon after.
Marvin Johnson cut the ball back from the byline, George Saville left it on the penalty spot and Roberts was there to smash into the bottom corner first time.
The Boro loanee’s first goal for the club, and what a time to get it - capping a monumental effort from the team to earn all three points.