The 26-year-old scored two in six first-half minutes, either side of Marcus Tavernier's curling effort, to put Boro on their way to three points after slipping out of the play-off picture in recent weeks.
Impressive Middlesbrough, who had lost their previous two games, were full of intent from the first whistle and Millwall found it hard to come to terms with them.
That meant the Lions, whose winless run now stands at 10 Sky Bet Championship games, were unable to make a real fight of this in the second half.
Middlesbrough, who had gone unbeaten in 10 before a recent run of four defeats from six games, were dangerous from the off and passed the ball around well in the final third.
It was a lovely move that led to Watmore's first inside 14 minutes. He tapped in Marvin Johnson's low cross from inside the six-yard box after Chuba Akpom and George Saville had created the space for him.
Less than two minutes later it was two when Sam Morsy picked out Tavernier in space on the right. The wide-man cut inside his man before curling a brilliant effort inside the far corner from just inside the area.
If Millwall wanted to get back into it before the break then they had a further problem in the 20th minute when Middlesbrough added a third.
Saville was again involved when his scuffed shot from the edge of the box rolled perfectly into the path of Watmore – who scored two against Swansea 10 days earlier – to control and then find the net with just goalkeeper Bartosz Bialkowski to beat.
Paddy McNair had a free-kick from 25 yards tipped over by Bialkowski and then, after a Ryan Woods error, Akpom fired over when he should have tested the keeper when he was put in by Tavernier.
Middlesbrough had plenty of chances after the restart too. Bialkowski denied Akpom's chip after Shaun Hutchinson had slipped to let him in.
Middlesbrough had already done enough in the first half to win this.