Substitute Leroy Lita capped a stunning turnaround for Reading as they sealed victory on their Premiership debut.
Lita scored early in the second half
Middlesbrough, now managed by former defender Gareth Southgate, led 2-0 thanks to a Stewart Downing volley and a close-range effort from Yakubu.
But Dave Kitson pulled a goal back before Steve Sidwell's left-foot shot two minutes later put Reading level.
Lita then blasted home the winner within 10 minutes of coming on after some sloppy Middlesbrough defending.
Southgate will be alarmed by the manner of his side's capitulation after taking an early advantage.
They went ahead after 11 minutes when Yakubu swung in a cross from the left and Downing found the corner of the net with a cleanly-struck volley.
Then they doubled their lead 10 minutes later when Marcus Hahnemann failed to deal with a low Fabio Rochemback free-kick.
The ball fell to Yakubu, who had the simple task of slotting past the stranded goalkeeper.
Nothing was going Reading's way and it would have been easy for heads to go down in the home camp.
But then Kitson reduced the deficit after a fine spell of pressure on the Boro backline.
Seol Ki-Hyeon beat Julio Arca easily and crossed for Kitson, who overcame a poor first touch to score Reading's first Premiership goal.
After waiting 135 years for their first top-flight strike, the second arrived within seconds when Ivar Ingimarsson's low centre fell perfectly into the path of Sidwell, who sidefooted home.
The home side were inches away from a third either side of the break as Middlesbrough started to look shell-shocked.
Before the interval, Graeme Murty's cross flew just out of the reach of Kevin Doyle.
Stewart Downing scored the opening goal
Then Andrew Davies, who replaced the ineffective and injured Arca at half-time, came to Boro's rescue with a last-ditch header.
Reading finally went ahead through their own substitute on 55 minutes.
Lita, who came on for the injured Kitson, found the goal at his mercy after Seol's cross from the right led to panic in the Boro defence.
Middlesbrough failed to muster much of a response until the closing stages, when Mark Viduka went close twice.
First, he was denied by Hahnemann after a mistake by Ibrahima Sonko.
Then the Australian had a goal ruled out for offside moments later, although the decision looked questionable.
Reading boss Steve Coppell:
"Both managers could criticise
aspects of play but from our point of view it was terrific to come back like
"We started nervously and looked anxious, which is human nature given the position we're in.
"When their second one went in, we relaxed a bit and had a go at them."
Boro boss Gareth Southgate:
"We knew we had to dig in after going 2-0 up and Reading threw everything at us.
"We missed a great opportunity. They played like that because of the energy and spirit they showed last season."
Reading: Hahnemann, Murty, Shorey, Ingimarsson, Sonko, Sidwell, Harper, Convey (Hunt 83), Ki-Hyeon (Gunnarsson 83), Doyle, Kitson (Lita 45).
Subs Not Used: Stack, Oster.
Goals: Kitson 43, Sidwell 44, Lita 55.
Middlesbrough: Schwarzer, Parnaby, Pogatetz, Riggott, Arca (Davies 45), Morrison (Johnson 84), Rochemback (Mendieta 68), Boateng, Downing, Viduka, Yakubu.
Subs Not Used: Turnbull, Maccarone.
Booked: Riggott, Rochemback, Boateng.
Goals: Downing 11, Yakubu 21.
Ref: M Halsey (Lancashire).