Carlos Rodon pitched two-hit ball into the eighth inning, Yoan Moncada homered in the seventh and the Chicago White Sox beat the Los Angeles Angels 4-2 on Tuesday night.
Rodon (3-3) took a no-hitter deep into the sixth and finished with eight strikeouts in 7 2/3 innings. He yielded three walks, but worked quickly and smoothly while the White Sox earned back-to-back victories for the second time in July.
Nicky Delmonico added an RBI single in the eighth as the White Sox took the first two games of a four-game series between two major-market AL teams with zero playoff victories in this decade.
Rodon retired 15 consecutive Angels between Mike Trout's first-inning walk and David Fletcher's two-out walk in the sixth. Andrelton Simmons singled to center to break up the no-hit bid but got caught rounding first base too far by alert third baseman Yolmer Sanchez after Fletcher slid in safely.
The Angels chased Rodon and rallied in the eighth with Fletcher's RBI double and Trout's two-out, bases-loaded walk from reliever Juan Minaya. Jeanmar Gomez then got Justin Upton on a shallow flyout to end the rally.
Felix Pena (1-1) pitched six innings of four-hit ball for the Angels (50-52), who fell two games below .500 for the first time all season. Los Angeles has lost four of five on its 10-game homestand.
Joakim Soria pitched the ninth for his 16th save in 19 chances, retiring pinch-hitter Shohei Ohtani on a fly to center for the second out.
The 25-year-old Rodon was outstanding in his seventh start since returning to the mound in June after shoulder surgery last September.
The Angels' season-long struggles against left-handed pitching also continued against Rodon. The club was batting .219 against lefties entering the game, and the Angels didn't even come close to getting a hit in the first five innings, mostly striking out or grounding out meekly.
Pena, a reliever pressed into a rotation spot by the Angels' staggering list of injuries to their starting pitchers, struggled with control but largely kept Los Angeles in the game.
Chicago cobbled together two runs in the third inning on Jose Abreu's bases-loaded walk and Avisail Garcia's sacrifice fly.
Moncada interrupted his 1-for-15 slump since the All-Star break by going 2 for 4 with a walk and a homer to right off reliever Noe Ramirez in the seventh.
James Shields (4-11, 4.26 ERA) is 0-6 in his last eight road appearances, including seven starts as he'll face Tyler Skaggs (7-6, 2.68 ERA) who has a 1.43 ERA over his last seven starts.