The Astros, who had held a 6-1 lead earlier in the game, fell behind 8-7 in the sixth after the White Sox erupted for five runs.
But they rallied to tie it in the seventh on Carter's RBI single, then put on a power display with in the ninth against Chisox closer Addison Reed (5-2).
After Reed retired the first two Astros batters, Dominguez smoked an 0-1 pitch into the left-field bleachers for the go-ahead tally and Carter (3-for-4, four RBI, three runs scored) followed with his second blast of the game for an insurance run.
The White Sox loaded the bases with two outs in the bottom of the ninth, but Jordan Lyles logged his first career save by striking out Avisail Garcia to end the contest as Houston took the first of a three-game series.
Rookie reliever David Martinez (1-0) earned his first major-league win despite allowing three runs over 2 2/3 innings.