As long as each election is a ‘winner take all’ contest for one position, you’ll get a 2-party system. There is no prize for coming in second, let alone third, fourth, or fifth. Smaller parties never win, and eventually starve, leaving only two that can be competitive.
Further, whichever side is more splintered tends to lose, giving both left and right strong incentive to hang together—resulting in two big parties.