Sebastian Vettel finished third for Ferrari to lose further ground on Hamilton with just five rounds of this year’s championship remaining.
It was Hamilton’s fifth victory in the last six races and 70th career win as he closes on his fifth F1 crown, but he was full of sympathy for Bottas.
‘It’s actually been a difficult day,” he admitted.
“Valtteri did a fantastic job all weekend. He was a real gentleman to let me through, but he’s not fighting for the championship like me.”
Finland’s Bottas, still seeking his first win of the season, could not mask his obvious disappointment.
“Personally, I found it quite a difficult race. We (Mercedes) always have a plan, but it’s always difficult to predict what is going to happen in a race. It is what it is.”
After a slow pit stop, Hamilton briefly found himself behind Vettel before completing an audacious overtaking move on the German to reclaim his track position.
Shortly after came tense exchanges on the Mercedes team radio, with a clearly disgruntled Bottas ordered to allow Hamilton through and into second place in the race behind Red Bull’s Max Verstappen.
Young Dutch star Verstappen had charged through from 19th on the grid after a pre-race penalty but had still to pit, leaving Hamilton effectively in the lead.
Verstappen eventually took a superb fifth place to mark his 21st birthday behind the second Ferrari of Kimi Raikkonen, with his Red Bull teammate Daniel Ricciardo in sixth.
Charles Leclerc, replacing Raikkonen at Ferrari next season, again served notice of his promise with a brilliant seventh for Sauber, with Kevin Magnussen eighth for Haas, ahead of the Force India pair of Esteban Ocon and Sergio Perez.
It was a subdued Hamilton who was presented with his prize by Russian president Vladimir Putin, with little of the usual celebration next to his unhappy teammate.
But he will move on to the Japanese Grand Prix in Suzuka in a fortnight with a commanding advantage over Vettel, who has seen his chances of a fifth title recede since the summer break in the face of a resurgent Mercedes team and Hamilton’s individual brilliance.
Mercedes has also increased its lead in the constructors’ championship to 53 points over Ferrari, but that will be little consolation for Bottas, who is still seeking his fourth F1 victory and looked set to achieve it after claiming a brilliant pole Saturday and moving clear of his teammate in the early exchanges.
But with Vettel still a factor and with Hamilton having apparent problems with a blistered tire, Mercedes took its controversial decision.
Team chief Toto Wolff tried his best to console Bottas: “Valtteri this is Toto – a difficult day for you, a difficult day for us — let’s get together and discuss it later,” he said.
Bottas was able to repel a late challenge from Vettel to remain in second place, with Hamilton rounding off his victory by 2.45 seconds.