Playing the ATP 500 event in Beijing for the first time since 2015, the six-time champion was pushed to the limit by reigning French Open and US Open champion Zverev.
Meeting for the first time in nearly 16 months, Djokovic struggled to contain the German's power in the early stages as Zverev claimed the opening set, but the Serb gradually worked his way into the match and refused to let his opponent pull away.
The turning point came late in the second set when Djokovic broke at 5-4 to level the match, shifting the momentum in his favour after a tightly contested battle.
With little separating the pair in the third, the Serbian struck again at 5-4 on the Zverev serve, securing the decisive break to seal victory.
The pair had not met since Roland Garros in 2025, where Djokovic won in four sets, and Saturday's encounter again highlighted the Serb's ability to deliver under pressure despite a season disrupted by physical issues.
With the victory, Djokovic moved a step closer to a seventh China Open title and an elusive first trophy of the year, while denying Zverev another opportunity to strengthen his bid for the world number one ranking.