The Ukrainian riding for the Discovery Channel team covered the 211-kilometers from Luchon to Carcassonne in France in 3 hours, 34 minutes and 58 seconds. Italy's Alessandro Ballan was second 27 seconds behind and Oscar Freire of Spain was third.
Popovych moved up in the overall standings from 23rd to 10th place, trailing Landis by 4 minutes, 15 seconds.
Landis finished Friday's stage 20th but maintained an 8-second overall lead on Frenchman Cyril Dessel, who was part of a group including Belgium's Tom Boonen and Australian Robbie McEwen that finished together.
Russia's Denis Menchov is 1:01 behind Landis overall.
Stage 13 takes cyclists on a 230-kilometer trek across southern France from Bezier to Montelimar on Saturday.