Corey Kluber's second-half surge rolled on, and a trip home didn't help Texas left-hander Martin Perez.
The Cleveland right-hander pitched six strong innings to match a career best with his sixth straight victory and Abraham Almonte hit two run-scoring doubles, helping the Indians beat the Rangers 12-1 on Friday night in a matchup of division leaders.
The Indians (73-54) snapped a three-game losing streak, which had tied a season high, and pulled within a game of the Rangers (75-54) for the best record in the American League a night after losing 9-0 to Texas ace Cole Hamels.
Adrian Beltre hit a solo homer in the sixth for the AL West-leading Rangers, but Kluber (14-8) struck out the other three hitters in his final inning to finish with seven strikeouts. The 2014 AL Cy Young winner has a 1.75 ERA during a winning streak that covers nine starts - eight since the All-Star break.
"I don't think there's one magic thing that I can put my finger on," said Kluber, who also won six straight in his Cy Young season. "Just a matter of going out there and trying to be consistent. Hope that allows me to be in a good spot when it's my turn."
Almonte drove in four runs in his first multi-RBI game of the season, including a two-run double past diving center fielder Ian Desmond in left-center to give the AL Central leaders a 6-0 lead in the sixth.
Jason Kipnis opened the scoring with an RBI double in the third against Perez (8-10), who lost at home for the first time since May 13 and dropped to 1-6 with a 6.30 ERA over his past 10 starts.
Perez, who is 1-8 with a 6.23 ERA on the road, dropped to 7-2 at home after winning six straight decisions in Arlington. He gave up 10 hits and six runs in 5 2-3 innings.
"You don't have to get frustrated over four or five games," Perez said. "That's how you learn. Just come back tomorrow and work tomorrow. Forget this game."
Roberto Perez, Cleveland's No. 9 hitter with a .104 average coming in, had four singles and three RBIs.
Texas designated hitter Carlos Beltran went 0 for 4 with two strikeouts, extending his career-worst slump to 0 for 32.