Reading looked the more dangerous early on with Jimmy Kebe lively down the right. But the visitors responded with John Eustace testing Federici before Martin Taylor headed just over the crossbar.
The Royals again attacked hard but Watford held their own and got their reward when poor Reading defending allowed Weimann space in the area and the on-loan Aston Villa striker accepted the chance to open the scoring.
Graham was then twice denied spectacularly by Federici as Watford applied the pressure.
Reading defender Matt Mills had a header that just went wide as the Royals tried to find a way back into the contest and Watford keeper Scott Loach parried a Mikele Leigertwood shot to safety just before half-time.
Loach also had to be alert a minute after the interval when he scrambled McAnuff’s header away.
But he was powerless to stop Hunt from heading in the leveller after a cross from Howard cannoned back off the frame of the goal.
The home side pushed hard to find the all-important third goal, with Kebe and McAnuff proving to be a nuisance for the visitors’ defence all afternoon. Substitute Simon Church wasted a great chance to score the winner on 77 minutes as Kebe laid the ball perfectly into the striker’s path but the Wales international failed to direct his shot on target. Reading made all the running late on but were unable to find a winner.
The point means both the Royals and the Hornets have now failed to register a win in their last six league games, and both remain in the mid-table region of the Championship. So, if Watford have designs on making the playoffs then this makes Watford v Bristol City on Tuesday night a must win game.