Because the leagues didn't play each other during the regular season until 1997. The leagues had separate umpires, league presidents...the were separate. One league's best team had nothing to do with the other league's best team. So the only fair thing to do was to alternate home field advantage.

Now, if they wanted to change it to best overall record, I could accept that. But giving it to the winner of an exhibition game is just about the most stupid thing in baseball. It's embarrassingly stupid for MLB to do it that way.

That isn't any more fair than flipping a coin. Each season is unique. I don't think the team that didn't get home field thought it was ok because the year before some other team from their same league did get it.