CHICAGO — The Cubs had runners on second and third after left fielder Brian Goodwin dropped Jason Heyward's sinking sacrifice fly, but Cody Allen struck out Willson Contreras and Kyle Schwarber to end the game.
Schwarber threw his batting helmet down and had to be restrained by third base coach Will Venable after third base umpire Gabe Morales ruled he went around on his check swing on strike three. Manager Joe Maddon then continued the argument as the umpires made their way off the field.
Playing without Mike Trout once again because of a groin injury, the Angels stopped a five-game road slide. Trout is receiving treatment in Southern California and could rejoin the team during its next series in Texas.
Zack Cozart went 1 for 33 in his first 13 games this season. But he hit an RBI single in Los Angeles' three-run second and singled again in the fourth and eighth.
Javier Báez hit two RBI doubles for Chicago, which had won three of four. Kyle Hendricks (0-3) allowed three runs, two earned, and six hits in five innings in his third consecutive loss to begin the year.
Báez's second run-scoring double trimmed Los Angeles' lead to 3-2 in the fifth. But Buttrey (1-0) replaced Chris Stratton and retired Heyward on a grounder to first, ending the inning.
The Angels added two more in the sixth on bases-loaded walks for pinch-hitter Albert Pujols and Kole Calhoun, and Peter Bourjos hit a sacrifice fly in the eighth. The Cubs got two back on Mark Zagunis' single in the bottom half of the eighth, but Allen fanned Descalso to end the inning.
Maddon had Kris Bryant on his bench, but he sent Zagunis up to hit for reliever Brandon Kintzler. Bryant is batting .194 (7 for 36) with 13 strikeouts in his last nine games.
Maddon said before the game it was a planned day off for Bryant and had nothing to do with his recent trouble.
"I had a really good conversation with him yesterday," Maddon said. "He's actually in a good place."
The Angels jumped in front with three in the second, helped by another catcher interference call on the Cubs and a solid play by an exuberant fan in the front row at Wrigley Field.
After Jonathan Lucroy led off with a single, Goodwin hit a foul popup near the Cubs' dugout. Báez and third baseman David Bote tried to chase down the ball, but a fan made the catch with his glove right as they arrived. The man appeared to apologize as Báez and Bote headed back to the field.
Goodwin and David Fletcher then hit consecutive singles to give Los Angeles a 1-0 lead. La Stella reached on the fourth catcher interference call on the Cubs already this year, and Cozart singled in Goodwin. Fletcher scampered home when Stratton bounced into a double play.
Angels first baseman Justin Bour had an adventurous start to his day when he hit a liner into the corner in right in the first. Bour made a wide turn around first and Ben Zobrist threw behind him, but the ball went off Bour's leg and into foul territory.
Bour got up and ran as catcher Willson Contreras made a strong throw to second. Umpire Marty Foster ruled Bour was safe, but the bigger slugger got up, started back to the dugout and then was tagged out by Báez.