Dayot Upamecano scored for the first time since 2018 as RB Leipzig came from a goal down against 10-man Hertha Berlin to win and stay top of the table, with Marcel Sabitzer scoring the winning goal on his return from injury.