The world No.4 broke Murray twice as he used his power to move forward and win 12 out of 16 points at the net. And Zverev took his first set point after 48 minutes when the Scot dumped a drop shot into the net.
Murray had fought back from losing the first set against Carlos Alcaraz in the second round but Zverev is a class above the Spanish teenager.
He did break to lead 3-1 but dropped his serve after failing with two drops shot in the fifth game. As Zverev roared in celebration after his forehand winner, Murray furiously tossed his racquet as he returned to his chair.
At the break at 4-3, Zverev needed five minutes to change the laces in his tennis shoes – and Murray checked with the German before nipping off for a comfort break.
The Scot was broken for a fourth time when he sent down his fourth double fault but when Zverev served for the match he missed two overheads – putting one into the met from a yard and then sending the second long – but took the tiebreak 7-4 with his first match point when Murray put a volley wide.
Murray, who had a second hip surgery in January 2019, has not beaten a top-five player since seeing off Novak Djokovic at the Nitto ATP Finals in November 2016 to finish the year as world No.1.
Zverev said: “He was the only one of the Big Four I had not beaten so I am happy to do that. He played a fantastic match – maybe the best since his surgery. I hope he can continue like that because tennis has missed him and it is great to have him back.
“I always stayed in the match even though I was a break down in both sets. The second set was an extremely high level from both of us. I am extremely happy it went my way.”