ANAHEIM, Calif. -- The Los Angeles Angels had to sit through a long, depressing plane ride home after giving up Nick Swisher's game-ending grand slam in Cleveland.
Garrett Richards made sure the Angels' disappointment didn't even last a day.
Richards pitched six innings of four-hit ball, David Freese drove in two runs, and the Angels beat the Texas Rangers 7-3 on Friday night for their seventh win in eight home games.
Josh Hamilton and Erick Aybar had RBI singles in the fifth inning as the Angels opened a six-game homestand with just their fourth win over the AL West-rival Rangers in their last 18 meetings.
Richards' latest outstanding start and a balanced offensive effort were an appropriate cure for the Angels, who lost four of six on their road trip -- capped by Swisher's theatrics -- after a prolonged stretch of outstanding play.
"It's a good bounce-back game," Angels manager Mike Scioscia said. "We had a tough game and a long flight, but we came back with a lot of energy."
C.J. Cron homered in the third, and Hamilton and Howie Kendrick scored on Brad Snyder's throwing error in the fourth inning as the Angels built a 7-1 lead against Joe Saunders, who remained winless in six starts for Texas.
Richards (7-2) needed a career-high 119 pitches, but still struck out seven and didn't allow an extra-base hit while shutting down another opponent in his breakthrough season. He has yielded just two earned runs in 27 innings over his last four starts after giving up only Andrus' third-inning RBI single to Texas.
"It was nice to be able to get stretched out a little bit," Richards said of his record pitch count. "My arm feels good. As long as I don't give up many runs, it's all right."
Not everything went perfectly for the Angels: Mike Trout went 0 for 3 with a walk, snapping his 13-game hit streak, the second-longest of his career.
The Angels steadily built a lead against Saunders (0-3), who gave up 10 hits and three walks while losing for the fourth time in five starts against his former team. The left-hander began his major league career in Anaheim and spent parts of six seasons with the club.
"It wasn't my best, let's put it that way," Saunders said. "Honestly, it was kind of a battle from pitch one. I felt like I was just a tick off all night long. ... I made some good pitches and they still made me pay for it."
Michael Choice homered and Elvis Andrus extended his hitting streak to 10 games for the Rangers, who have lost three straight.
Texas had an early lead after Leonys Martin walked, stole second, advanced on a wild pitch and scored on Andrus' single in the third. Cron replied later in the inning with his fourth homer of the season, an impressive shot into the elevated right-field stands.
Hamilton walked and advanced on Kendrick's double in the fourth, and both runners scored when Snyder fielded Aybar's grounder and threw it past catcher Robinson Chirinos to the backstop.
Snyder has been an outfielder for most of a career spent largely in the minors, but he is learning on the job at first base for a club missing injured star Prince Fielder.
"That was a big situation," Snyder said. "I feel terrible doing that to Joe, but I'm going to keep working and try and pick him up next time."
Freese then showed signs of emerging from his season-long slump with an RBI single, just the second run-scoring hit in 77 at-bats since May 25 for the longtime St. Louis third baseman.
Trout and Albert Pujols walked and scored on singles in the fifth, and Freese drove in Hamilton moments later to chase Saunders.
NOTES: Los Angeles recalled versatile INF Grant Green from Triple-A Salt Lake before the game, and he replaced Pujols in the sixth inning for his first major league appearance at first base. Green batted .359 in 22 games with the Angels earlier this season, but was sent down for a lack of playing time. ... Trout struck out looking in his first two at-bats, leading to an animated conversation with home plate umpire Chad Fairchild. Trout leads the Angels with 73 strikeouts. ... The Angels are 11-4 in Richards' starts this season and 28-29 in other pitchers' starts. ... Ben Rowen, the Rangers' submarining right-handed reliever, pitched 3 1-3 innings of one-hit relief in his third major league appearance. He is from nearby Rancho Palos Verdes.