The win moved the Rays six games over .500 for the first time since 2015 and allowed them to hold their lead for the first wild-card spot in the American League. The win also moved them 2 1/2 games behind Boston for the AL East lead.
Cobb (8-6) allowed one run, six hits and three walks in 7 2/3 innings and was in command from the start. The Angels hit few balls with authority other than Luis Valbuena's two-out solo home run to center in the seventh, and Cobb twice induced easy end-of-inning groundouts when the Angels got a runner to second.
It was Cobb's seventh straight start of six innings or more, a career high. He's allowed only 36 hits in 49 1/3 innings over his last seven starts and two earned runs or fewer six times.
Morrison hit his 25th home run of the season in the third, a two-run shot, and Souza hit his career-high 18th in the eighth. The Rays have hit 136 home runs, third-most in the AL and fourth in the majors. They had 14 hits, including four by Corey Dickerson and three by Shane Peterson.
The loss sent the reeling Angels four games under .500 for the first time since April 23. They are 2-6 in their last eight games and have scored 11 runs in their last six games, and 32 in their last 14. They are last in the AL in runs per game at 4.06. Valbuena hit a consolation two-run home run off Jumbo Diaz in the ninth.
The Rays had eight hits against Angels starter JC Ramirez (8-8) in the first four innings. Mike Trout had a pair of singles in his second game back from the disabled after undergoing surgery on his left thumb, but also lost a fly ball in the twilight that led to a Rays run.
Tampa Bay hit Ramirez early and often, notching a pair of hits in each of the first four innings to build a 4-0 lead.
After leaving two on in the first, back-to-back singles in the second by Adeiny Hechavarria and Peterson and a groundout by catcher Jesus Sucre gave the Rays a 1-0 lead.
Dickerson doubled to right field to start the fourth and Morrison followed with his 25th home run of the season to make it 3-0. It snapped an 0-for-15 slump and was only his third home run in his last 15 games.
The Rays made it 4-0 in the fourth with Peterson doubling to left and scoring on Sucre's single to right.
Singles by Albert Pujols and Yunel Escobar put two on with no outs in the second, but Cobb struck out Andrelton Simmons and got Valbuena to hit into a double play.
NOTES: Angels RHP Parker Bridwell will officially be recalled from Triple-A Salt Lake City on Sunday and start the series finale. He's 3-1 with a 3.24 ERA in six appearances in 2017. ... RHP Matt Shoemaker remains on the disabled list with a nerve condition in his right arm and received a cortisone shot that will keep him from throwing for at least a week. He made a rehab start earlier this week and left the game with pain. ... Rays SS Tim Beckham is expected to be activated from the disabled list Sunday, He suffered an ankle sprain the first week of July but was taking infield practice Friday and Saturday. He was hitting .274 with a .433 slugging and 11 home runs and 33 RBIs at the time of his injury. ... Rays CF Kevin Kiermaier, on the disabled list since early June after suffering a hairline fracture in his hip, plans to begin baseball activities when the Rays return home from their current road trip and hopes to be able to return to the field in early August.