The 2016 champion went down a set and two breaks before rallying to win five straight games and force a decider.
Stephens was the first to drop serve in the third set but the American broke straight back and carried the momentum to win the final three games and wrap up the victory 4-6 6-4 6-4 in just over two hours.
The former US Open champion goes on to face compatriot Madison Keys, who dispatched Jelena Ostapenko, last year's runner-up, 7-5 6-2.
Former champion Caroline Wozniacki also needed three sets to move into the last eight, seeing off number 12 seed Mihaela Buzarnescu 6-4 3-6 6-3.
Wozniacki made a strong start, holding two games to love as she built a 3-0 lead in the first set, but Buzarnescu had moments of brilliance, coming through a 13-minute game to hold for 4-2 in the opener.
The first set still swung in Wozniacki's favour but Buzarnescu continued to apply the pressure, taking the second set on Wozniacki's serve.
The Dane used her experience in the big moments as the third set went back and forth, eventually clinching the victory on three match points after more than two-and-a-half hours on court.
Her next opponent will be Maria Sakkari, who stunned defending champion Kiki Bertens in straight sets.
The 15th seed reached her first quarter-final of the year with a 7-6 (8) 6-3 win over second seed Bertens.
Third seed Aryna Sabalenka was also knocked out of the competition 6-2 7-5 by Monica Puig, but ninth seed Belinda Bencic came through her match 6-2 7-5 against American Taylor Townsend.
At the Monterrey Open in Mexico, former world number one Victoria Azarenka defeated Zarina Diyas to reach the tournament's quarter-finals.
The number two seed hit 22 winners and needed just 67 minutes to dismiss the 25-year-old 6-3 6-2, setting up her next match against third seed and four-time champion Anastasia Pavlyuchenkova.
Top seed Angelique Kerber progressed to the last eight 6-3 6-4 over Karolina Muchova, and is joined by another former top-ranked player, Garbine Muguruza, who triumphed 6-3 6-7 (1) 6-2 against Margarita Gasparyan.
The second seed will next face Russia's Kristina Mladenovic, seeded seventh, who earned a comfortable victory against Greta Arn, defeating the Hungarian 6-0 6-2.