A costly error by Hammers' defender James Collins allowed the hosts to open the scoring inside five minutes, and they were made to pay for the mistake as the Royals held firm
James Collins' scuffed pass back allowed Pavel Pogrebnyak to give the hosts the lead early on, but the game failed to take off for the remainder of the first period. Things were much the same after the break, with the Hammers unable to find an answer and the home side holding on.
Both sides were unchanged from their respecting Boxing Day clashes, Pogrebnyak continuing as the lone striker for Reading while Carton Cole was available for the visitors after the red card received against Everton was rescinded. The Hammers also welcomed Ricardo Vaz Te back with a place on the bench.
Just five minutes into the game Hammers' defender Collins was caught red-faced when he tried to simply knock the ball back to Jussi Jaaskelainen. However, he ended up assisting Royals' forward Pogrebnyak with a terrible error, his back-pass hitting his other foot before playing the Russian in for a simple finish.
The Hammers managed to get a bit of a foothold in the game thereafter and conjured up a decent chance when Kevin Nolan crossed from the left, Winston Reid's header denied only by a fantastic reflex save by Adam Federici.
However, the clash then became very scrappy with niggling fouls and misplaced passes taking over and, in part due to the quality of Reading's defending, there were no other real chances of note before the break.
The second half began much like the first ended, with neither side able to cut through the other's defense. Cole had a half-chance for the visitors but but his header flew over, while the lively Matthew Jarvis had a strike blocked by Alex Pearce.
With the Hammers looking slightly the better side, and almost pulling one back through substitute Jack Collison, the Royals then nearly doubled their lead through Jem Karacan, the midfielder slamming an effort against the crossbar before Jimmy Kebe's follow up went wide.
Despite some minor pressure late on, and Vaz Te missing an open goal with a free header from all of six yards, McDermott's men proceeded to hold on to the vital win that will give them a much-needed boost in the race for survival.