The hosts took control early on with an Albert Adomah strike, then Grant Leadbitter added a second before the break.
After Reading’s Kaspars Gorkss was sent off, Boro comfortably claimed victory as Leadbitter scored a penalty.
The Teessiders took the lead with a sizzling strike on 12 minutes. Emmanuel Ledesma floated in a cross and Lukas Jutkiewicz twisted to nod down for Adomah to drill in his ninth goal of the season from 12 yards.
The home side almost had a second two minutes later as Adomah picked out Ledesma – but his shot flew wide.
Boro threatened again in the 18th minute as Leadbitter curled in a 25 yard free-kick and when goalkeeper Alex McCarthy parried Jutkiewicz stabbed the rebound into the side-netting.
The visitors went close in the 20th minute as a throw into the box somehow evaded Ben Gibson and landed for the unmarked Jobi McAnuff – but his first touch was poor then his angled shot on the turn was weak and Boro keeper Shay Given went full length to parry.
Boro weathered a spell of pressure then broke out and went close on the half hour as Ledesma sent Marvin Emnes to the edge of the box but his powerful shot was well saved.
Boro doubled their lead nine minutes before half-time as Ledesma robbed a defender then cut inside and rolled the ball square for Leadbitter to hammer in from 25 yards.
Boro broke quickly on the stroke of half-time as Adomah streaked forward then sent a diagonal ball to the left for Emnes to race into the box – but his angled shot was well wide.
The Royals started well after the break but their hopes were dealt a blow in the 52nd minute as Gorkss fouled Ledesma to collect a second yellow card.
Reading continued to press for a spell and after a Garath McCleary ball from the right had forced Given off his line to palm away, Billy Sharp saw a shot fly wide.
But Boro gradually took control and went close to a third goal when Adomah fired just over.
Reading almost clawed a goal back when Given came out to punch clear a free-kick and it fell to Pavel Pogrebnyak, who poked it goalwards – but the alert Curtis Main hooked it clear.
Boro sealed the win with a third goal from the penalty spot eight minutes from time, Leadbitter calmly slotting home after Ledesma was brought down in the box by Alex Pearce.
The Royals had the game’s final chance in the 86th minute as Daniel Williams cut in from the left to crack in an angled drive which Given tipped over.