Rosario, who began the day with 10 home runs this season, helped the Twins beat the AL Central-leading Indians for the third straight day.
Rosario hit a solo homer in the first inning and another solo home run in the seventh. Brian Dozier also homered for Minnesota.
Fernando Rodney (2-2) pitched a scoreless ninth to pick up the victory.
The Twins trailed 4-3 when Dozier led off the seventh against Indians starter Mike Clevenger with his ninth homer of the season to tie it at 4. Rosario then greeted reliever Tyler Olson with his second homer of the game.
Indians center fielder Bradley Zimmer made a spectacular diving grab on Ryan LaMarres drive to left-center in the second. Bobby Wilson and Dozier followed with singles to bring home a run, but Clevenger came back to retire Rosario and Miguel Sano to limit the Twins to just a run.
Twins starter Kyle Gibson was perfect through the first four innings, striking out six batters. Encarnacion led off the fifth with a 434-foot drive to the second deck in left field.
Encarnacions second homer was a three-run shot in the sixth that put Cleveland on top 4-3. Reliever Ryan Pressly came on with a runner on second and two out, but he walked Jose Ramirez before Encarnacion hit the first pitch for his 16th homer of the season.
Indians: Manager Terry Francona said the team expects to activate OF Lonnie Chisenhall on Tuesday. Chisenhall has been on the DL since April 8 due to a strained right calf. OF Brandon Guyer (neck) remains on track to rejoin the team this week as well.
Twins: C Mitch Garver was available one day after taking a foul tip off his knee in Saturdays game. Twins manager Paul Molitor said he had planned to start Wilson at catcher even before Garver was injured.
Indians: RHP Corey Kluber (8-2, 2.02 ERA) will face the Brewers on Tuesdy night in Cleveland. Kluber has opened the season with 12 consecutive quality starts, the longest such streak for an Indians pitcher in 100 years.
Twins: Minnesota is idle on Monday and hosts the White Sox for a doubleheader on Tuesday. The Twins have not yet named starting pitchers for either game.