The winner came from Brian Howard in the 59th minute after Matthew Kilgallon's header had rebounded back off the Royals crossbar.
Howard reacted quicker than anyone else to send the ball through a forest of legs into the far corner of the net.
It was United's tenth successive league game unbeaten. In contrast Reading have won just twice in 12.
Reading did come close to scoring with two superb second-half efforts from Dave Kitson. The first was a header against the crossbar and the second a firece shot that drew a brilliant save from Paddy Kenny.
The first half lacked any real sparkle with neither goalkeeper being seriously troubled as the sides battled it out in midfield.
The physical side of the game was highlighted by the fact that two players were stretchered off. Reading's Mali international Kalifa Cisse was knocked unconscious after landing badly following a mid-air collision with Darius Henderson.
Cisse was taken to the Royal Berkshire Hospital for an x-ray on his neck.
Eight minutes from time United's Jamie Ward was stretchered off after a tackle that earned Michael Duberry a yellow card.
Referee Kevin Friend could have been friendlier to Reading, who were angry at his decision to award only a yellow card to Howard for flattening Chris Armstrong with his forearm.
They were even angrier when the referee waved play on after what appeared a clear case of handball by Gary Naysmith in his own penalty area early in the second half.
The first effort of a game that was more brawn than brain came as early as the second minute when Reading's Kitson, on loan from Stoke, sent a speculative shot wide of the far post from an acute angle, but it was no real threat to Kenny.
United thought they had scored after 26 minutes when Kitson's clearance was played back in to Greg Halford, who controlled the ball before firing home from close range, only to discover he had already been given offside.