China's Zhang broke Kerber's serve five times and fired 22 winners to seal the victory in an hour and 27 minutes in her second meeting with the German.
"I can defeat a former number one, a Grand Slam champion, this is something I'm proud of for the rest of my life," an elated Zhang said.
The 29-year-old looked in complete control against Kerber, cruising through the first set before the German levelled the contest.
'She has a great future' - Kerber pays tribute to rising star Fernandez after defeat
Yet Kerber struggled to keep her unforced errors count down, making 36 in the match, and her challenge ended in a final set rout.
Up next for Zhang is US Open champion Osaka, who thumped Julia Goerges 6-1 6-2 and described the performance as her best of the tournament so far.
"I know I played well today, better than all the other days," Osaka said. "Key today was staying focused and trying to return well because we both have really good serves."
Zhang has a 2-2 win-loss record against Osaka and beat the Japanese player in their last meeting in Madrid this season.
China's Wang Qiang advanced with a 6-4 6-4 win over world number seven Karolina Pliskova in an hour and 37 minutes while Kiki Bertens of the Netherlands crashed out after a 6-4 6-3 defeat by Katerina Siniakova.
Australian Open champion Caroline Wozniacki clinched a place in the season-ending tournament alongside Petra Kvitova after beating Estonia's Anett Kontaveit 7-5 6-4.
The in-form Aryna Sabalenka knocked out defending champion Caroline Garcia 5-7 7-6(3) 6-0.
US Open women
Raducanu overwhelms Zhang to power into third round
US Open Order of Play Day 4 - Raducanu, Djokovic, Barty in action