Bennett held off Italy's Elia Viviani (Cofidis) and Pascal Ackermann (Bora-Hansgrohe) of Germany who finished second and third respectively.
He paid tribute to his influential teammates - particularly leadout man Michael Mørkøv, who positioned him perfectly for the win.
“I think the more sprints we do together the better we get,” said Bennett.
“It’s becoming more second nature and it’s just about repeating the same thing and making decisions in the final and getting to know each other and the team.
"And we’re pretty much nailing it at the minute.”
Tadej Pogacar, meanwhile, retained the overall lead heading into the final stage despite copping a 10 second penalty from the UCI commissaires for 'pushing another rider' - that being teammate Jan Polanc.
Both riders were docked 10 seconds, with the team confirming Polanc gave Pogacar a nudge forward in the sprint finish, where last year's Tour de France winner ended the stage safely in the peloton.
After all that, Pogačar’s overall lead on Adam Yates (Ineos Grenadiers) sits at 35 seconds, with João Almeida (Deceuninck-QuickStep) third at 1:02.