Gary Maddox's two-run single capped a three-run fifth inning and Steve Carlton struck out 14 in helping the Philadelphia Phillies to a 5-2 victory in St. Louis last night that snapped the Cardinals' eight-game winning streak.

The loss reduced the Cardinals' lead over the Phillies in the East Division to 4 1/2 games with 11 to play.

It was the 48th time in his career Carlton (21-10) has struck out 10 or more batters in a game.

The Phillies won for just the third time in their last 10 games when an error by third baseman Kelly Paris, playing just his sixth game in the majors, allowed Philadelphia to score three unearned runs in the fifth.

After the error, a sacrifice and a fly out, Pete Rose singled off St. Louis starter Eric Rasmussen (0-1) to break a 2-2 tie. Mike Schmidt walked to chase Rasmussen and Maddox greeted reliever Jeff Lahti with a single to make it 5-2.

Carlton, who improved his lifetime mark against St. Louis to 35-10, had a string of 26 2/3 scoreless innings against the Cardinals ended in the third when they took a 2-1 lead on RBI singles by Lonnie Smith and Keith Hernandez. The Cardinals left runners at first and third when Gene Tenace flied out.