Lester (7-10) won his second straight start following a seven-game stretch without a victory, limiting the Yankees to five hits and two walks while striking out four.
Gonzalez socked a two-run homer in the first inning and the Red Sox never trailed after that. Nick Punto added an RBI double and Pedro Ciriaco went 4-for-4 with a run scored.
David Phelps (3-4) was tagged with the loss, allowing three runs on seven hits in 6 2/3 frames for American League East-leading New York.
Curtis Granderson went 2-for-3 with a solo homer for the Yankees.