First-half goals by James McClean and Steven Fletcher and a late strike by Stephane Sessegnon secured the points as the experienced O'Neill celebrated a year in charge of the club.
Sunderland have jumped to 15th with 16 points from 16 games while Reading are left languishing second from bottom on nine points and remain six points from the safety zone.
Sunderland had won only twice in 23 league matches going into the match - rearranged from August due to a waterlogged pitch - while Reading had suffered four straight defeats.
Sunderland got off to the perfect start with a goal after three minutes with McClean firing home on the turn after Reading keeper Adam Federici punched a corner to the edge of the area.
Fletcher added a second with a delightful back heel after fullback Danny Rose crossed low for the Scotland striker who had missed the last two matches with an ankle injury.
Sessegnon wrapped up the victory in added time when he rounded Federici and tapped the ball into the net after expertly controlling a long ball and outmuscling Adrian Mariappa. (Writing by Ken Ferris; Editing by John Mehaffey)