The Toyota GR Yaris driver beat Scott Pedder in his Skoda Fabia by 2m49s in a rally of attrition.
Bates nearly suffered the same fate as Hayden Paddon, who was forced to retire from the rally after hitting a kangaroo during SS9 of the rally.
Speaking after the rally win, Bates revealed he hit a kangaroo on Sunday but was able to continue.
“We were very consistent. For sure, you create your own luck but with what happened to Hayden and John [Kennard] this morning, nothing can stop that,” said Bates at the end of SS16.
“We actually hit a kangaroo as well but we just got lucky and it didn’t damage our car.
“We came here with a game plan and we executed it really well.
“Thank you so much to Anthony [McLoughlin], the whole team at Toyota Gazoo Racing Australia for their support – and this GR Yaris, it’s coped with a lot this weekend so super proud.”
It’s the first time Bates has won the Rally of Canberra, his home event.
“We’ve been trying to win this rally for seven years and being my home rally, it’s extra special,” he said.
“It was such a tough weekend and I’m so happy to come out on top this weekend.
“Obviously, others had their misfortunes. It was very unlucky for Hayden and John this morning.
“We were looking forward to a good battle with them today. Fortunately for us, luck was on our side this weekend. Over the moon.”
After Bates and Pedder came Joshua Wiedman, who was a shock podium finisher in his Mitsubishi Lancer Evolution IX in a rally of attrition.
Harry Bates was the victim of hitting a concrete drain on SS2 while Tom Clarke suffered a brake drama on the same stage.
Alex Rullo was on course for an outright podium in his Hyundai i20 N before damaging his right rear on SS9, the same stage where Paddon hit a kangaroo.
Pedder’s chances of fighting for the win were ultimately hampered by a puncture on SS10.
Harry Bates failed to finish Heat 1 but came back to win Heat 2 over his brother Lewis Bates. The #1 Toyota GR Yaris won the Power Stage.