From the other side, Dallas Keuchel had trouble cooling the hot White Sox offense, which scattered 12 hits over 39 batters. The high mark was the second time in three starts the Astros' top pitcher allowed double-digit hits, dating back to a July 4 loss to the Angels.
"You look at the hits that they were able to get, it was a credit to them," Astros manager Bo Porter said. "But at the same time, they were quality pitches, they just didn't end up finding holes."
Keuchel, who entered Friday's game 7-2 on the road, finished with four runs (three earned), five strikeouts and two walks over 103 pitches (65 strikes) in five innings.
"Starter-wise, you like to settle in the first couple batters, but you kind of got to go into conservative mode," Keuchel said. "You don't want to let any unnecessary runs in."
Houston cut its strikeout mark in half from Friday, but still fanned seven times, including five in the final three innings and back-to-back whiffs from the top of the order to end the game with runners on first and second.
"We had the guys up there that we would want up there, and were just not able to come up with the big hit," Porter said.
One of those batters was the team's lone All-Star, second baseman Jose Altuve, who struck out for the fourth and fifth time this series in nine at-bats.
The MLB hits leader tied the game at 3 in the fifth with a double that brought home Enrique Hernandez and Marwin Gonzalez, who had back-to-back base hits and advanced on a wild pitch by White Sox starter Hector Noesi. Altuve was stranded at second after consecutive outs by Jason Castro and Springer.
With his parents in attendance from Connecticut, Springer sent his 20th home run of the season 415 feet into the right-field bleachers on a 1-2 slider with no outs in the fourth to score the Astros' first run.
The White Sox took the first lead with the help of an error by third baseman Matt Dominguez, who overthrew first on a routine groundout by Adam Eaton that advanced the two runners, including Alejandro De Aza, who scored from second.
Chicago was again aided by the Astros when Keuchel hit Flowers with the bases loaded in the third, three at-bats after Conor Gillaspie brought home Dayan Viciedo on an RBI single to center.
Reliever Ronald Belisario got the White Sox out of a seventh-inning jam after Gonzalez moved runners into scoring position with one out on a sacrifice bunt. Belisario struck out the next batter, Altuve, loaded the bases with an intentional walk to Castro, then got Springer to ground out to third.
Keuchel's ERA elevated to 3.29, which drops to second among Astros starters behind the injured Collin McHugh (3.28).
Houston heads into Sunday's series finale having lost 11 of its last 15.
When asked if the team is still shaking off rust from the four-day hiatus earlier this week, Porter said: "Every team in baseball had the same All-Star break. It's part of it. All-Star break is over. It's time to play baseball."