BOSTON (AP) -- Adrian Gonzalez hit a two-run homer, Franklin Morales turned in another solid substitute start and the Boston Red Sox averted a four-game sweep with a 6-4 win over the Minnesota Twins on Sunday.
Gonzalez finished with three RBIs. Carl Crawford added three singles, an RBI and a leaping catch for the Red Sox on his 31st birthday.
The victory snapped Boston's four-game losing streak and salvaged a rough weekend against the AL's second-worst team.
Josh Willingham hit a solo homer, his 28th, and Ryan Doumit a two-shot for the Twins.
Ben Revere extended his career-best hitting streak to 19 games with a single, drove in a run and made a splendid over the shoulder catch for Minnesota.
Morales (3-2), taking Josh Beckett's turn in the rotation after the right-hander left his previous start with a back spasm, gave up one run on three hits in six innings.
The Red Sox hadn't been swept in a four-game series at home by Minnesota since 1991.
Morales has given up two runs or fewer in five of his six starts this season.
Revere's hitting streak is the longest by a Twins' player since Torii Hunter had a 23-gamer in 2007.
Leading 2-1 with two outs in the fifth, Gonzalez hit a drive into seats above the Green Monster off starter Nick Blackburn (4-7) after Crawford singled.
Cody Ross' RBI single made it 5-1 in the seventh. Jacoby Ellsbury added a sacrifice fly in the eighth.
Blackburn's road woes continued, giving up four runs on nine hits in five innings to fall to 17-35 in career road starts.
Revere robbed Jarrod Saltalamacchia, running full speed to the center-field wall to make the grab on the track and then turning to throw to second to complete a double play.
Willingham and Doumit homered off reliever Vicente Padilla in the ninth.
Alfredo Aceves, the losing pitcher Saturday, got the final three outs for his 23rd save.
Boston had jumped in front 2-0 with a pair of runs in the third. Crawford had an run-scoring grounder after Mike Aviles singled and Ellsbury doubled. Gonzalez followed with an RBI single.
Minnesota cut it to 2-1 in the fifth on Revere's sacrifice fly. Alexi Casilla walked, stole second and advanced on Jeremy Carroll's ground out.
Crawford, who wore his uniform pants high with his bright red socks showing nearly to his knees, robbed Doumit with his second-inning catch at the wall.
The two clubs have played seven four-game sets in Fenway Park since the last time the Twins swept a four-game series.
NOTES: During the game the Red Sox acquired Twins 3B Danny Valencia for Class A outfielder Jeremias Pineda. The 27-year old Valencia hit .198 with two homers and 17 RBIs in 34 games with Minnesota this season. He was assigned to Triple-A Pawtucket. Pineda is hitting .421 in 36 Gulf Coast League games. ... OF Willingham was back in the starting lineup after resting Saturday with a right-hander going for Boston. ... Red Sox manager Bobby Valentine said ''everything is on track'' for Beckett to start Wednesday against Texas. ... Boston CF and leadoff hitter Ellsbury returned to the starting lineup after resting what Valentine called a minor leg injury Saturday. ... Red Sox righty Aaron Cook (2-5) faces Japanese star and Rangers right-hander Yu Darvish (11-7) at Fenway on Monday night.