Len Barker pitched a six-hitter and Alan Bannister singled, doubled and homered to carry the Cleveland Indians over the New York Yankees yesterday, 7-2.

Barker (4-2) walked four and struck out five as a Cleveland crowd of 40,045 saw the Indians snap a three-game losing streak, their longest of the season.

Stranding three Yankees on base in the third inning, Barker settled down to retire 11 straight hitters before Larry Milbourne singled with one out in the seventh. Barker's league-leading earned run average dipped to 1.93.

The Indians scored three runs in the second off loser Rudy May (4-4). Toby Harrah led off with a walk, and one out later he scored from first when Rick Manning's single was bobbled by center fielder Jerry Mumphrey. Manning went to second on Mumphrey's throw home and scored on a Tom Veryzer single. Bannister followed with a double to make it 3-0.

The Yankees got an unearned run in the third. Bobby Brown reached on an error by Barker, stole second and scored on a single by Dave Winfield. Their only earned run came in the ninth on a double by Brown.

Cleveland chased May with three runs in the fifth. Two of those came home when Bo Diaz greeted reliever Dave LaRoche with a double.

Bannister's first home run of the season in the sixth topped off the Indian scoring.