Millwall's mini revival came to an abrupt halt as goals in either half from Troy Deeney and Joe Garner secured three crucial points for Watford.
An out-of-sorts Lions outfit had been unbeaten in their three previous games, but went behind on 34 minutes courtesy of a crisp finish from Deeney before Garner doubled Watford's lead 14 minutes into the second-half.
A miserable night for Kenny Jackett's outfit was compounded in the 90th-minute when top scorer Darius Henderson saw his weak penalty comfortably saved by Hornets stopper Scott Loach.
"It was a poor performance," said Jackett. "The goals we gave away were poor and Deeney and Garner were a handful for us early on in particular.
It was a scrappy game; we didn't do enough on the ball or go past anyone. In a tight game conceding two goals doesn't help."
Lions boss Jackett handed a debut to young Spurs loanee Ryan Mason who replaced James Henry in an otherwise unchanged line-up from the team that drew with Southampton at the weekend.
But the opening 45 minutes seemed to pass the 20-year-old by, as it unfortunately did for the rest of his team-mates in a poor first-half display from Millwall.
Watford had clearly done their homework, chasing, harrying and generally making life very difficult as Jackett's men struggled to get into any sort of rhythm.
It proved an immensely frustrating occasion for the home faithful who did their best to try and encourage the team on a bitterly cold night, but to little avail.
In an opening half of few chances, those created invariably fell to the visitors, who had seen Garner's third minute header from a Lee Hodson cross gathered by keeper David Forde.
Garner wasted a great opportunity on eight minutes, dragging his effort wide after capitalising on some hesitancy from centre halves Tony Craig and Darren Ward.
However Watford finally broke the deadlock 11 minutes before the break when Alex Kacaniklic picked out Deeney and the former Walsall man drove home from the edge of the area.
Millwall had a good chance to level just before the break when Liam Trotter's shot was brilliantly blocked by the body of keeper Scott Loach at close-range to send the ball spinning skywards to safety.
Watford grabbed their second goal just before the hour-mark when the impressive Kacaniklic's initial shot was parried by Forde, but the ball fell kindly for Garner who made no mistake with a thumping finish from four yards.
The Hornets, who worked tirelessly throughout, were nearly caught out on 67 minutes with Millwall's best move of the match. Liam Feeney, now having switched to the left flank with sub Chris Hackett on the right, cheekily back-heeled to overlapping left-back Scott Barron. The latter's pinpoint delivery found Henderson, but his header dropped onto the roof of the net.
John Marquis, on for the tiring Kane, saw his 80th minute header crash against the foot of the post as The Lions tried to work up a head of steam.
And even when referee Keith Stroud awarded a late penalty after keeper Loach's clumsy challenge on Marquis, it was with a sense of inevitability that 16-goal striker Henderson would see his spot kick saved. It lacked power and precision, a bit like The Lions performance on the night.
Millwall: Forde, Smith, Barron, Abdou, Ward, Craig, Mason (Hackett, 56mins), Trotter, Henderson, Kane (Marquis, 56mins), Feeney. Subs not used: Allsop, Lowry, Wright.
Bookings: Abdou (4mins), Barron (63mins)
Watford: Loach, Hodson, Eustace, Mariappa, Deeney, Doyley, Kacaniklic (Iwelumo, 75mins), Murray, Garner (Buaben, 89mins), Hogg, Nosworthy. Subs not used: Dickinson, Yeates, Bond.
Bookings: Hodson (63mins), Deeney (84mins)
Scorers: Deeney (34mins), Garner (59mins)
Ref: K. Stroud
Att: 9,294 (away 640)