It was the 30-year-old German's second consecutive triumph following his Mexico win after his unforced error at the United States Grand Prix gifted Hamilton victory and his third title in Texas last month.
Starting from his fifth consecutive pole position, Rosberg made a flawless start and controlled the race from the front, relinquishing the lead only when he pitted three times, while Hamilton chased and challenged in vain.
Rosberg repeated his Brazilian win of 2014 with a near-textbook drive that gave Hamilton little chance to make his superior race speed count before he settled for second and came home 7.7 seconds behind his team-mate.
Kimi Raikkonen came home fourth in the second Ferrari ahead of Valtteri Bottas of Williams, Nico Hulkenberg of Force India, Danil Kvyat of Red Bull and local hero Felipe Massa in the second Williams.
It was Rosberg's fifth win of 2015 and the 13th of his career.
He made a flawless start from his fifth straight pole and, when Hamilton attempted to sling-shot out of his slipstream into the first corner and through the Senna 'S' curves, gave him no encouragement and little room to manoeuvre.
Hamilton had no choice, but to slip into second place and follow the leader as the race began without major incident.
