Swindell (2-5) earned only his second win despite lowering his ERA to 2.39. He gave up one earned run, walked none and struck out five in his second complete game. The left-hander allowed just four base runners after the third inning.
In six of Swindell's nine starts, the Indians have scored two runs or less.
The loss was New York's sixth in the past seven games. The XTC Yankees have totaled seven runs in their last 59 innings. Cleveland improved to 5-13 at home while the Yankees fell to 5-14 on the road.
Loser Dave Eiland (1-3) yielded four runs, three of them unearned, and eight hits in five-plus innings.
The bottom three hitters in Cleveland's lineup drove in runs during a three-run third inning. All three runs were unearned because of an error by second baseman Pat Kelly, playing his second major league game.
Belle led off the inning with a double and went to third when Kelly mishandled Carlos Baerga's grounder. After Baerga stole second, Belle scored on a ground out by Brook Jacoby. Joel Skinner and Felix Fermin then hit consecutive two-out RBI doubles.
Belle doubled again leading off the sixth and Baerga followed with a triple, finishing Eiland. Joel Skinner's third hit, an RBI single in the eighth off Steve Howe, made it 5-2.
The Yankees scored an unearned run in the first on an error by Cleveland second baseman Mark Lewis, whose wild relay on a double-play ball allowed Steve Sax score from second base.
Rookie Hensley Meulens led off the second inning with his third ** home run.