The Lions twice caught Boro on the counter-attack and stretched their unbeaten Sky Bet Championship run to three games.
Stewart Downing pulled a goal back for the away side from long range as Middlesbrough looked to take something from the game.
But even as the visitors pushed, Millwall had the better chances and deserved their win.
The visitors started fairly well, with Patrick Bamford forcing a good save from Jordan Archer at his near post after 15 minutes.
Millwall soon began to find their feet and Shaun Hutchinson climbed highest from two corners in succession to test Darren Randolph.
On the second occasion, Lee Gregory’s flick forced the Middlesbrough keeper into an excellent reaction save.
The home side took the lead after 31 minutes when Wallace latched onto a Ryan Tunnicliffe through-ball to slot home from inside the area.
Boro thought they had equalised a few minutes later, but Britt Assombalonga’s header was correctly ruled out for offside.
Things got worse for the away side just five minutes later when Millwall captain Steve Morison found Saville unmarked just inside the box.
The chance seemed to have gone when the ball got stuck under Saville’s feet, but Middlesbrough failed to clear and he was able to wriggle through and prod home from eight yards.
Neil Harris’ side should have perhaps added a third shortly before half-time when Saville chose to shoot rather than pass following another counter-attack.
The Middlesbrough players were sent out to the pitch a few minutes early for the second half and started brightly.
Millwall left Martin Braithwaite unmarked in the penalty area but he failed to connect properly with a header from 10 yards out.
A couple of minutes later Downing pulled a goal back for the visitors, firing in from 25 yards. Archer got his hands to the ball but could only help it on its way into the net.
Millwall could have wrapped up the three points with ten minutes to go, but Tunnicliffe scuffed Morison’s chipped cross to the back post.
Morison then wasted a golden opportunity when Ben Gibson’s poor headed back-pass left him one-on-one with Randolph, who saved well.
Middlesbrough pushed hard for an equaliser, but Millwall were resilient in defence and held on for a well-deserved victory.
Garry Monk was left perplexed at the naivety of his Middlesbrough side.
He said: “At the risk of repeating myself, it’s just naive, it’s extremely naive. We know coming here, we’ve prepared the players all week, the direct play it’s going to be. That battle, that physical element to it, in terms of competing for those second balls, very direct stuff.
“To then be so naive and lose a lot of those battles in that first half in important areas and again in leading to the goals, it’s naive, schoolboy stuff. I’ve said it too many times this season.
“It’s never through a lack of effort within the group. It’s just comes back to naivety. I feel like a broken record at the moment. Schoolboy errors, so avoidable and basic stuff.
“And you don’t expect that from the level of players we’ve got, but unfortunately it’s happening too many times this season, but we have no other choice but to work and try and come through it.”