Catcher Mike Heath went three for four with his first three National League runs batted in and John Tudor held Montreal to seven hits over 8 2/3 innings yesterday, lifting the visiting St. Louis Cardinals to a 4-2 victory over the Expos.

Tudor (3-0) fell one out short of his third complete game of the season. In earning his 23rd victory in his last 24 decisions, the left-hander walked two and struck out four.

"I had a little control problem today, but I was able to make the pitches when I needed them," said Tudor. "That's what really counts in the end."

Todd Worrell retired Mitch Webster on a warning-track fly ball to record his third save. Joe Hesketh (0-2) took the loss.

Andre Dawson gave Montreal a 1-0 lead in the first inning with a drive over the left-field fence for his second home run of the season.

St. Louis tied in the fourth. Jack Clark tripled, the ball landing in shallow right field and bouncing into foul territory, and scored on a double by Heath.

Heath, batting .050 coming into the game, had a homer and two doubles. "Even though I haven't hit much, I wasn't worried because I've been happy with my overall performance," Heath said. "But I feel I'm swinging the bat better lately."

Tito Landrum singled to lead off the sixth and Heath hit his first NL home run. Heath came to the Cardinals with left-hander Tim Conroy from the Oakland A's in an offseason trade for pitcher Joaquin Andujar. Conroy was reactivated from the 15-day disabled list Friday.

*Pirates 4, Cubs 0: Mike Brown doubled in two runs in the third inning and scored on a single by Jim Morrison to lead Rick Rhoden and Pittsburgh to victory, spoiling Chicago's home opener.

Rick Sutcliffe, the 1984 Cy Young winner, lost his third straight start. Rhoden, who has asked to be traded, raised his record to 2-0 but needed seventh-inning help.

R. J. Reynolds opened the third with a single and Joe Orsulak sacrificed him to second. Sid Bream walked before Brown doubled to center, scoring both runners.

Tony Pena walked and Morrison followed with the second of his four singles to score Brown. Morrison also hit his first home run of the season, leading off the Pittsburgh eighth.

Rhoden had a five-hit shutout in the seventh when Jody Davis doubled on a fly ball that Brown lost in the sun in right-center. Ron Cey walked and Cecilio Guante relieved Rhoden. Guante struck out Shawon Dunston and got pinch batter Thad Bosley to fly out to end the inning. Pat Clements and Jim Winn finished up for Pittsburgh.

*Braves 6, Dodgers 3: Dale Murphy and Bob Horner each hit a two-run homer in Atlanta. It was the fourth loss in a row for Los Angeles and ended its string of 10 consecutive one-run decisions since the season opened.

Murphy drilled his third homer of the year to right-center in the first inning off Fernando Valenzuela after Rafael Ramirez had beaten out a single to shortstop.

The Braves added another run in the first on singles by Horner -- ending his 0-for-21 start this season -- and Terry Harper and a sacrifice foul fly by Ken Oberkfell.

Valenzuela (1-1) lost for only the fifth time in 16 career decisions against Atlanta. Valenzuela, whose wife Linda gave birth to a baby girl Friday morning, allowed seven hits, walked three and struck out two in six innings.

Atlanta expanded its lead to 5-0 in the third when Murphy walked and Horner ripped a 1-1 pitch over the left field fence.

David Palmer (1-1) allowed six hits, walked two and struck out four in 6 2/3 innings. Bruce Sutter pitched the ninth for his first save this season.

*Mets 5, Phillies 2: Ron Darling and Jesse Orosco combined on a five-hitter and Ray Knight and George Foster each had two-run singles in New York.

Darling, who gave up four hits in seven innings, beat Philadelphia's Steve Carlton (0-2), who allowed five hits and struck out 10 over 6 2/3 innings. Carlton, trying to win his first game since May 20, could not overcome his eight walks, four coming in a three-run first inning.

*Astros 6, Reds 4: Phil Garner and Alan Ashby rocked Mario Soto with home runs as Houston took advantage of the right-hander's inconsistency to win in Cincinnati.

Right-hander Mike Scott (1-2) threw a six-hitter for his first victory in three starts. He struck out a career-high nine, but needed last-out relief help from Dave Smith, who picked up his fourth save.

Raked for a National League-high 30 homers last season, Soto (1-1) gave up a homer in the first by Phil Garner, his third.

Dave Concepcion's sacrifice fly tied it in the second for the Reds, and they went ahead in the third when Ron Oester doubled and scored on rookie Kal Daniels' single.

*Giants 6, Padres 1: Scott Garrelts pitched a three-hitter and Jeff Leonard hit a three-run homer in the first inning in San Francisco to lead the Giants over San Diego.

Garrelts (2-1) struck out five in pitching only the second complete game of his major league career. The only hits the right-hander allowed were a third-inning double by pitcher Gene Walter, a sixth-inning double by Tony Gwynn and a ninth-inning homer by Terry Kennedy.

Leonard, who shares the National League home run lead with Cincinnati's Dave Parker at four, connected off losing pitcher Mark Thurmond (1-1).