Marwin Gonzalez, Ryan Jeffers and Josh Donaldson also connected, helping Minnesota win for the 10th time in 12 games. The Twins have multiple homers in six straight games, including 11 in the series against Cleveland.
''It was impressive,'' Minnesota manager Rocco Baldelli said. ''I mean, honestly, that's an impressive series offensively that we've had against as good of a pitching staff as I've seen in baseball.''
The Twins stayed one game back of AL Central-leading Chicago, which beat Detroit 5-2 on Sunday. The Twins visit the White Sox for the opener of a four-game series on Monday night.
Caleb Thielbar (2-0) got the win, recording two outs in relief of Michael Pineda. Sergio Romo earned his fourth save by striking out Franmil Reyes and retiring Tyler Naquin on a fly ball to center after allowing two hits in the ninth.
''It feels like we're playing the postseason,'' Gonzalez said. ''It's not really the postseason, but we're fighting for first place. And that matters a lot.''
Indians rookie Triston McKenzie (2-1) struggled for the first time in his fifth career start. McKenzie gave up five runs in 4 1/3 innings, despite surrendering just three hits. He struck out seven, issued one walk and hit a batter.
Cesar Hernandez and Carlos Santana each had three hits, but the Indians dropped their sixth straight game.
''Losing six in a row is definitely no fun, but I think we're in a good spot mentally and the day off will help us kind of reset and get going,'' McKenzie said.
Cleveland jumped out to a 3-0 lead, but Gonzalez got the Twins on the board with a two-run homer in the third.
Cruz tied it with a solo drive in the fourth, moving into a tie for the major league lead in homers. Jeffers hit a two-run shot in the fifth, his third of the season, and Donaldson added his fourth of the year.
After setting the major league record for homers last season, Minnesota started the day with 70 homers, fifth in the majors this season.
''Since Donaldson came back, the team looks more deep,'' Cruz said. ''It seems more complete. So definitely when you miss big pieces like him, (Byron) Buxton, (Max) Kepler, Mitch (Garver), I don't think we have been able to stay healthy, the whole group, this year. That kept us down. We're getting those guys back in the lineup and the way we're swinging is better.''
A COSTLY WIN
It was a costly win for the Twins.
Outfielder Eddie Rosario suffered a left elbow contusion after making contact with Buxton as the two chased a fly ball to end the eighth. Rosario had his left arm extended when it hit Buxton's chest. Rosario was replaced by Jake Cave to start the ninth.
Right-hander Trevor May left with mild cramping in his back, and Baldelli said after the game that Miguel Sano was dealing with a neck injury. He was replaced to start the eighth.
''I think everything that played out on the field today, obviously you never want to see anyone come out of the games or anything like that, but everything does seem relatively mild,'' Baldelli said.
Twins: Kepler was reinstated from the injured list after missing nine games with a left adductor strain. Kepler was hitless in four at-bats and left the bases loaded in the sixth after popping out. ... Rookie OF Brent Rooker was placed on the injured list after breaking his forearm when he was hit by a pitch Saturday.
Indians: RHP Carlos Carrasco (2-4, 3.12 ERA) will start Tuesday as Cleveland opens a two-game road series against the Chicago Cubs, who are scheduled to start RHP Yu Darvish (7-2, 1.77 ERA). Carrasco has allowed one run or less in each of his past three starts.
Twins: RHP Jose Berrios (4-3, 4.40) starts Monday for the Twins. Chicago has RHP Dylan Cease (5-2, 3.33 ERA) scheduled to start. Berrios has won three straight decisions and given up seven runs in 22 2/3 innings over his last four starts.
More AP MLB: https://apnews.com/MLB and https://twitter.com/AP-Sports
Copyright 2020 STATS LLC and Associated Press. Any commercial use or distribution without the express written consent of STATS LLC and Associated Press is strictly prohibited.