SEATTLE -- One bad inning, or maybe even just one not-so-bad pitch, cost Blake Beavan a chance to rack up his seventh win since the All-Star break on Tuesday as the Red Sox rallied for a 4-3 win that snapped their seven-game losing streak.Bolstered by a three-run home run by Cody Ross, Boston scored all four of its runs in the sixth against Beavan and then held on as the Mariners failed to capitalize on numerous scoring opportunities in the final frames. The loss leaves Seattle at 66-71 on the season, one win shy of last year's total, with 25 games remaining. Beavan said he thought he threw Ross a fairly good first-pitch slider, looking to get a ground ball with two on and no outs in the sixth. But the Red Sox's cleanup hitter drove it over the left-field fence for his 20th home run of the season. "It wasn't a bad pitch, but I guess he went up there looking for it. That's all I can think of," said Beavan. "That first pitch, you're not trying to get it out of the zone, but you're also not trying to put it down the middle. It definitely wasn't over the middle because he was out in front when he hit it. But he hit it on the barrel and he's got some pop." Jacoby Ellsbury preceded Ross with a single on the first fastball he saw from Beavan, so Ross wasn't sure what he might get from the big right-hander. "It's funny because after Jacoby swung at the first pitch, I was thinking he might throw a chase pitch just to try to slow it down," Ross said. "I just went up there with an approach that if I see something in the zone, I'm going to give it a good whack. Fortunately, it was a slider -- it wasn't a bad pitch -- it was outer third and I just kind of hooked it and got around it. Luckily I just got some air under it." When rookie Ryan Lavarnway followed with a solo home run two outs later, the Red Sox had their four runs and Beavan's once-promising night was done. "It just looked like his ball flattened out and he was missing in the middle of the plate," manager Eric Wedge said. "It happened in a hurry, and that's why we had to get him out of there. He was throwing the ball down, his breaking ball was good prior to that. But he just wasn't the same guy that inning." Beavan had been racking up wins since his recall from Triple-A Tacoma on July 17. Even with Tuesday's setback, he's 6-3 with a 4.12 ERA in 10 starts since rejoining the team. For the season, the former first-round Draft pick of the Rangers is 9-9 with a 5.01 ERA. Beavan's six wins since the All-Star break are still tied for the second-most in the American League behind teammate Felix Hernandez and Detroit's Max Scherzer (both 7-1). Some of that is the result of nice offensive help, as he's had the most run support among Seattle starters this season. But the 23-year-old has pitched well and he appeared poised to add another victory until the wheels came off in the sixth. He wound up allowing eight hits and four runs over 5 2/3 innings, with one strikeout and no walks. "I just need to be a little smarter, getting into that third time through the order," Beavan said after giving up four of his hits in the final frame. "It's them recognizing how I got them out the first two times and me needing to make adjustments with Ross and some of those guys. It's just part of the learning curve, something to get smarter at and learn from your mistakes." Franklin Gutierrez and Kyle Seager launched back-to-back solo home runs off Jon Lester in the third inning to give Seattle an early 3-0 lead. Gutierrez's shot to center was his third home run of the season and first since he returned from a two-month stint on the disabled list following a concussion. But Gutierrez left the game moments later, replaced in center field in the top of the fourth after feeling tightness in his groin. Seager moved back into the team lead with his 16th long ball of the season, a rip to right-center on a 1-0 pitch that also increased his club-leading RBI total to 78. The Mariners also got to Lester for a run in the first when Dustin Ackley singled, stole second and scored on a Jesus Montero base hit. Montero went 3-for-4 to raise his average to .264. He's 7-for-15 (.467) on the current homestand and nearly added to that when he ripped a line drive in the seventh right at first baseman James Loney with runners on first and second. Ackley and Seager each had two of Seattle's 12 hits, but the Mariners were 1-for-10 with runners in scoring position, including stranding Eric Thames after his two-out triple off Red Sox closer Andrew Bailey in the ninth. "It was a rough one in terms of getting guys over and stuff," said Thames, who, along with Trayvon Robinson, failed to get a bunt down in key situations late in the game. "I finally barreled one and we came close. If Seager hits that one a centimeter higher that ball is in the seats and we go home happy. It's one of those things. We'll come back tomorrow and get after 'em again."