Xisco Munoz’s Hornets made it eight victories from nine matches in Tuesday’s trip to South Yorkshire, where Francisco Sierralta opened the scoring with his first goal in English football.
Ismaila Sarr and Ken Sema extended Watford’s lead before the break, with the Millers pulling one back through Freddie Ladapo after Michael Smith saw a spot-kick saved.
But Dan Gosling hit back almost immediately to wrap up a comprehensive Championship win.
Fourth-placed Brentford failed to capitalise on that slip-up as they blew a two-goal lead to draw with Wayne Rooney’s Derby.
Ivan Toney’s penalty and a Sergi Canos strike put the Bees in control midway through the first half, only for Lee Gregory and fellow half-time substitute Louis Sibley to make it 2-2.
Elsewhere, third-placed Swansea are three points behind Watford after losing 3-0 at Bournemouth.
Philip Billing’s volley and Joel Latibeaudiere’s own goal put the Cherries in control, with Arnaut Danjuma adding gloss late on.
Cardiff drew 0-0 at home to Stoke on a night when visiting midfielder Joe Allen hit hit the crossbar at the death, while Middlesbrough continued their play-off push with a 2-0 win against Preston.
North End defender Jordan Storey sliced a Yannick Bolasie cross into his own net to open the scoring, with captain Alan Browne sent off before manager Alex Neil also saw red.
Marcus Tavernier wrapped up Boro’s 2-0 win early in the second half.
Luton won by the same scoreline against Coventry. James Bree set the hosts on their way, before Elijah Adebayo converted a penalty after Kyle McFadzean had been sent off for handball.
Additional reporting by PA.