The Bayern Munich striker scored twice in the first half to better a late effort from Robin van Persie to give the Germans top spot in Group B and put the Dutch on the brink
A laboring Dutch outfit fell two goals behind by halftime thanks to a pair of lethal finishes from Mario Gomez, who took his tournament tally up to three, with both goals set up by Bayern Munich teammate Bastian Schweinsteiger.
Bert Van Marwijk's men were able to improve after the break though, and pulled one back through a breathtaking strike from Robin van Persie on 73 minutes.
But despite a late surge from the Oranje, Joachim Low's men were able to hang on and take their place at the top of Group B with six points leaving them on the verge of qualification for the last eight.
Even if the Dutch beat Portugal in their final group game on Sunday, their fate is out of their hands, as qualification depends on both Germany defeating Denmark and a favorable goal-difference.
Van Persie had the first opportunity of the match after six minutes, running onto Mark van Bommel’s glorious lifted pass, only to poke his finish straight at Manuel Neuer.
Germany looked to respond through Mesut Ozil, whose volley from Van Bommel’s weak clearing header rebounded off the post into the grateful arms of Maarten Stekelenburg.
Germany took the lead on 24 minutes when Gomez gave a lesson in clinical finishing.
Schweinsteiger’s through pass perfectly picked out the run of his club teammate, whose exquisite turn allowed him the space to slot into the corner despite a slight touch by Stekelenburg.
Gomez came close to another just past the half-hour mark, but was a few inches short of connecting with Muller’s low center from the right.
Germany was in the ascendancy, and could have doubled the lead when Ozil’s free-kick found Holger Badstuber completely unmarked, only for Stekelenburg to block the defender’s shot from point blank range.
The Mannschaft would get their second seven minutes before halftime though, with the Bayern combination working a treat once more.
Gomez still had his work cut out for him after receiving Schweinsteiger’s pass on the right side of the box, but did not let the angle faze him, and lashed over Stekelenburg into the far side of the goal.
The Dutch goalkeeper was suspect for Germany’s second, but prevented his side from falling further behind by tipping away Schweinsteiger’s free-kick with the last kick of the half.
Van Marwijk shook things up at the interval, hauling off captain Van Bommel and Ibrahim Afellay for Huntelaar and Rafael Van der Vaart to start the second half.
However, Germany still held the upper hand. Mats Hummels surprised Netherlands with an enterprising run up the length of the pitch, before forcing Stekelenburg into a smart double save.
Robben tried to spark his side into life with a run down the left flank, teeing up Van Persie at the edge of the box for a snap-shot that was pushed away by Neuer. Wesley Sneijder was next up, bending a long-range effort inches wide of the far post.
But as the second-half wore on, Netherlands began to inch its way back towards contention. Robben sliced a close range volley off target, before Sneijder saw his shot blocked full on the face by Jerome Boateng.
With 73 minutes gone, the Dutch found a way back into the game. Van Persie took a pass on the edge of the box on the turn, and smashed an unstoppable shot with his weaker right foot past the despairing Neuer.
That sparked a late spell of pressure by the Dutch, but Germany was able to hold firm at the back to claim the points, almost scoring again after a gaffe by Stekelenburg nearly left Klose with an empty net.