Four relievers combined to hold the White Sox scoreless after starter Wandy Rodriguez left after 5 1/3 innings.
The southpaw, whose last start against the White Sox in 2007 resulted in a loss, left the bases loaded in the third inning and two runners on base in the fourth.
"I was working hard today, because in that situation, two outs, bases loaded, all you can do is make quality pitches [to] the hitter," Rodriguez said. "That's what I did today."
Rodriguez (5-4) allowed three runs on nine hits, but made the pitches he needed to with runners in scoring position to earn his 78th career victory, tying him with Ken Forsch for 10th place on the franchise's all-time wins list.
"Rodriguez was good," said White Sox manager Robin Ventura. "He was managing the game. When we got guys on, he found a way to throw that better pitch, keep us off balance and not let us get anything."
The White Sox (32-26) outhit the Astros, 12-8, but even after Rodriguez left the game, the bullpen continued to strand runners.
The Astros (25-33) led by two runs in the seventh inning when Wesley Wright relieved Wilton Lopez with two runners in scoring position. He forced catcher A.J. Pierzynski, who hit an RBI double the previous inning, to ground out to third to end the threat.
"The whole bullpen really did a great job," said Astros manager Brad Mills. "Wesley came in and got a big out on the groundout."
The Astros played flawless defense behind their pitching staff, including a bare-handed putout by third baseman Chris Johnson on a soft grounder by White Sox third baseman Orlando Hudson with two men on. Johnson left after five innings because of nausea.
Second baseman Jose Altuve also prevented a single with a diving stop in the fifth inning on an Adam Dunn grounder toward Altuve's left.
"They got a run on that one, but at the same time, that stopped the rally from going," Lidge said.
Houston's superb defense kept its lead at two, when Bogusevic, a Chicago native who grew up rooting for the White Sox and whose family was in attendance, delivered a moonshot to right field in the eighth to put the game away.
"It was late in the at-bat, so I had seen quite a few pitches," Bogusevic said. "I'd seen a couple fastballs, seen a couple breaking balls. I was just looking for something in the zone to put a good swing on."
The home run was Houston's third of the night. Jed Lowrie hit a two-run shot in the fifth inning just beyond the glove of White Sox right fielder Alex Rios to build the Astros' lead to 4-0, marking back-to-back games with a home run for the Houston shortstop.
Lowrie, who knocked in three runs in the first five innings, has three home runs in June and at least one hit in six of his last seven games, including multiple hits in four.
"I'm not really thinking about it," Lowrie said. "I think that's been one of my strengths this year, just really focusing on hitting the ball hard and letting the results happen, not trying to control the results."
First baseman Brett Wallace also went deep to right field in the second inning for his first home run of the year.
The Astros had lost 10 of their last 12 games entering Friday, but the victory gave them three wins in their last five games.
"We played a lot of close games this year," Bogusevic said. "Early on, we came out on the short end of a lot of them. It takes time to learn to do the little things that turn it in your favor in a one- or two-run game."