This victory was Rosberg's first ever win at Monza - and also marked his 50th career podium finish in Formula 1, where he was joined by Hamilton who finished in second.
Sebastian Vettel finished third to complete the podium, sending the Ferrari faithful into a frenzy by breaking out into song during the trophy presentation.
For Rosberg, it was a masterclass - as he capitalised on a poor start from Hamilton to take the lead at the first turn, which he did not relinquish for the rest of the race.
Hamilton's subpar start saw him drop from pole-position down into sixth - but managed to quickly pass both Valtteri Bottas and Daniel Ricciardo to move into fourth.
The Mercedes garage opted for a two-stop strategy, while the Ferrari's went with a three-stop plan - which was enough to allow Hamilton to leap-frog both Vettel and Kimi Raikkonen, who finished the race in fourth.
Red Bull's Daniel Ricciardo finished fifth after a breath-taking late overtake on the Williams of Valtteri Bottas, who crossed the line in sixth.
Teenage sensation Max Verstappen finished seventh, while Force India's Sergio Perez finished eighth.
After announcing that he will retire from Formula 1 at the end of the year, Felipe Massa finished the race in ninth, while Nico Hulkenberg was the last of the point-scorers in tenth.