Curt Schilling (9-8), who pitched a one-hitter in his last start against Oakland June 7, allowed six hits and one run over six innings.
Mike Lowell, J.D. Drew and Bobby Kielty each drove in a run for the Red Sox, who have won three of four and extended their lead in the AL East to 2 1/2 games while cutting their magic number to clinch the division to four.
Oakland starter Chad Gaudin (11-13) took the loss. He gave up three runs on three hits and seven walks in four-plus innings.