The 21-year-old played some stunning tennis in the closing stages of a dramatic 4-6, 7-6 (7/4), 2-6, 6-3, 6-3 fourth-round victory and will next face Dominic Thiem who reached a third successive quarter-final in Paris by seeing off Japan's Kei Nishikori 6-2, 6-0, 5-7, 6-4.
World number 38 Khachanov has now lost at the last-16 stage at Roland Garros twice in a row, while Zverev ended his wait for a maiden major last-eight appearance at the 12th attempt.
"Well, I'm young, so I might as well stay on court, get some practice and entertain you guys," smiled Zverev, who is bidding to become the first German man to win the French Open since 1937.
"Me and my brother are guys that spend three, four hours a day in the gym, lifting heavy weights, on the treadmill. It paid off today."
A tight first set heated up in the 10th game when Zverev saved two set points, the second after becoming incensed when the umpire overturned a line call of out from a Khachanov shot.
But the Russian sealed the set at the third time of asking, leaving the world number three needing a fightback for the third consecutive match.
There was excitement at the end of the second set too as a marathon game saw Zverev fail to serve it out to level the match, firing long on Khachanov's fifth break point after wasting three set points.
But the German gathered himself, taking a tie-break as the momentum swung back in his favour.
That proved a false dawn for Zverev, though, as Khachanov eased through the third set with some powerful hitting.
But Zverev, as he did in his wins over Dusan Lajovic and Damir Dzumhur, forced a decider, sealing the set with an ace after saving two break points.
And he secured an impressive victory, finishing the match with 63 winners and 17 aces.
Former champion Novak Djokovic faces Fernando Verdasco later in the day, looking to reach the last eight of a Grand Slam for the first time since Wimbledon last year.
- Keys sees off Buzarnescu -
American 13th seed Madison Keys reached the quarter-finals for the first time with a 6-1, 6-4 win over Romania's Mihaela Buzarnescu.
Keys, the US Open runner-up last year, will face either Czech 26th seed Barbora Strycova or Yulia Putintseva, the 98th-ranked Kazakh, for a place in the semi-finals.
The 23-year-old American has now reached at least the last-eight of all four majors, after ending the dream run of Buzarnescu, who had never won a Grand Slam match before the tournament.
"First week, my goal is to get to the second week," said Keys.
"Then once you get to the second week, every match obviously has more nerves, and there's more on the line and all of that."
Later on Sunday, Caroline Wozniacki will look to continue her serene progress so far against Russian youngster Daria Kasatkina.
But all eyes will be on Monday's showdown between Serena Williams and Maria Sharapova, with the latter trying to end an 18-match losing streak to her bitter rival.
Three-time champion Williams is playing her first Grand Slam tournament since taking time off last year due to pregnancy, while Sharapova is at Roland Garros for the first time in three years after serving a doping ban in 2016 and being refused a wildcard 12 months ago.