Zverev lost 6-4, 5-7, 7-5 to Chile's Cristian Garin, who sits 44 places below him in the ATP rankings, to end his hopes of a record third successive title in Munich.
"Everything is going against me at the moment, nothing is going in my favour," said Zverev after the defeat. "Last year, I won matches like this, but this year I am often losing them."
'I'm in a hole', admits Zverev after Barcelona shock
The reigning ATP Finals champion survived three match points in the second set before wasting two himself in the third and ultimately suffering his first defeat in ten games on the Munich clay.
Zverev disputed a line call on his first match point, before coming within inches of hitting a winner down the line on his second.
"I thought the ball was out on the first one, and then it was out only by a few inches on the second one," he said.
Top seed Zverev dumped out of Marrakech tournament
The German star said he was already looking forward to trying to regain his crown in Munich next year.
Garin will face third seed Marco Cecchinato in the semi-finals, after the Italian battled to a 1-6, 7-5, 7-5 win over Hungary's Marton Fucscovics.
There was further disappointment for the home crowd when Philipp Kohlschreiber lost 6-4, 5-7, 4-6 to Italy's Matteo Berrettini later on Friday.
Berrettini meets fourth seed Roberto Bautista Agut in the last four, after the Spaniard overcame Argentina's Guido Pella 4-6, 6-4, 6-0.
COMMENTS
Comments are moderated and generally will be posted if they are on-topic and not abusive.
For more information, please see our Comments FAQ