The Indians produced 16 hits while snapping a two-game skid.
Cleveland took a 4-0 lead with a three-run third highlighted by a two-run single from Reynolds.
David Ortiz then hit a three-run homer that brought the Red Sox back within one and the Indians inched in front 6-3 with single runs in the fourth and fifth.
That set the stage for Cleveland's big inning, during which the Indians sent 10 men to the plate.
Reynolds singled in the first run during the sixth and Gomes then doubled home two more in an at-bat that was prolonged when Boston first baseman Mike Napoli dropped a popup in foul territory for an error.
Stubbs contributed a two-run triple to keep things going and he scored the final run of the inning on a single by Bourn.
Ryan Dempster (2-5) was charged with the loss after giving up four runs on five hits in three innings.
Cleveland reliever Scott Barnes came into the game in the seventh with a nine-run lead, but by working the final three innings he picked up the first save in 20 major league appearances.