The job of politics is to bring about consensus. If you don't get consensus prior to a vote, then all of the candidates that could have done a deal ahead of the election suffer.
Under a first past the post system, the job of the candidates is to horse trade so that there are only two candidates at the election.
First past the post works because it is simple, understandable and it forces politicians to do the deals ahead of the election - or suffer the consequences of being ignored entirely.
Politicians and researchers hate it, because they want to trade for their favourite hobby horses after an election when they no longer have to suffer the scrutiny of the electorate and can use minority positions to drive forward change that would never get anywhere in a consensus system.
About the only improvement to a FPTP system you need is a 'none of the above' option, so that everybody on the list can be rejected.