The Red Sox cut the lead to one run on Mike Lowell's two-out RBI single in the ninth off Ryan Franklin, but Kevin Youkilis flied out to right with runners at first and third as Franklin got his 10th save.
Friday's win came on the same day that Schilling announced he would have shoulder surgery Monday that would end his season and, possibly, his 20-year career.
Jason LaRue's homer tied the game 1-1 in the fifth, Skip Schumaker's two-run shot made it 4-2 in the seventh and Yadier Molina's solo homer put St. Louis ahead 5-3 in the eighth as the hitting returned after the Cardinals scored just four runs in being swept by Kansas City in their previous three games.
In St. Louis' last game at Fenway Park, Schilling allowed no earned runs in six innings of Boston's 6-2 win in the second game of the World Series. Before the game, he had a surgical procedure to suture a loose tendon in his right ankle and pitched as blood seeped onto his sock.
In the opener of that four-game sweep, Tim Wakefield allowed five runs in 3 2-3 innings, but the Red Sox won 11-9.
Wakefield (4-5) pitched better Friday - after rain delayed the start of the game by one hour, 14 minutes
- but three of the seven hits he allowed in seven innings were homers. He is 1-4 in his last eight starts.
Lohse (9-2) allowed one earned run and six hits in six innings and snapped his winless streak against the Red Sox. He had been 0-3 with a 6.26 ERA against them in his career before signing with St. Louis as a free agent after finishing last season with Philadelphia.
Lohse fell behind 1-0 in the second on Julio Lugo's sacrifice fly. The Cardinals tied it in the fifth on Larue's second homer of the year. He was a late addition to the lineup at catcher when Molina, in his return from a concussion, was shifted to designated hitter. Larue went 3-for-4.
St. Louis made it 2-1 in the sixth on two throwing errors by shortstop Lugo. Rick Ankiel doubled and stayed at second on the first error. Chris Duncan then grounded to first baseman Youkilis, who threw to Lugo for the out, but a wild return throw allowed Ankiel to score.