Ryan Bennett and Elliott Bennett scored within three minutes of each at the start of the second half to put Norwich in charge and although Reading pulled a goal back through Garath McCleary with 18 minutes left, they could not find an equaliser.
The win sees Norwich climb to 13th, seven points clear of 18th-placed Wigan and looking increasingly likely to be playing top-flight football next season.
The same cannot be said of Reading, though, as they are now 10 points adrift of safety with 12 to play for.
Norwich started strongly and Elliott Bennett (twice) and Robert Snodgrass saw efforts go wide before Javier Garrido's low shot was gathered by Alex McCarthy at the second attempt.
Reading tried to respond with a couple of efforts from McCleary but neither seriously troubled Mark Bunn. Pavel Pogrebnyak scooped another chance over before Norwich striker Kei Kamara saw his volley on the turn well saved by McCarthy.
McCarthy also denied Kamara four minutes into the second half but from the subsequent corner Norwich went in front. The Reading goalkeeper saved Grant Holt's header but the ball fell for Ryan Bennett to sweep in his first Norwich goal.
A second was almost immediate as McCarthy was caught in no-man's land trying to reach a Snodgrass cross and Elliott Bennett shot through his legs.
Norwich kept up the pressure and Holt, Snodgrass and Kamara came close before, out of nothing, Reading pulled a goal back when McCleary fired home a swerving 25-yard shot which Bunn got a hand to but could not keep put.
Reading pushed for an equaliser but could find no way through.