Craig Gardner scored an equaliser from the penalty spot as Sunderland and Reading entered the break level at 1-1 at the Madejski Stadium.
Jimmy Kebe fired the Royals into a seventh-minute advantage when he applied a powerful finish to a charging Jobi McAnuff run.
Home stopper Adam Federici made an excellent double save to maintain Reading's lead, firstly parrying an Alfred N'Diaye shot before reacting well to also foil Sebastian Larsson from the rebound.
Federici was helpless to save Gardner's confident spot kick though, which was awarded after Pavel Pogrebnyak needlessly lunged in on John O'Shea.
Simon Mignolet produced a save to rival those of Federici's when he acrobatically tipped a Pogrebnyak header over the crossbar.
The Reading keeper would be called into action again before the interval, saving from Stephane Sessegnon's low strike to ensure Brian McDermott's side half-time parity.