Why not? The Red Sox and a few other teams have such an advantage over other teams (talk about an "integrity of the game" issue) that they may as well pay anything they can to get a top player. They have NOTHING to lose. They are able to make huge mistakes (have done so repeatedly) and not have to worry about long-term implications.
Baseball is a joke. 8 months (and counting) questioning the integrity of the NFL over 1 psi in a football compared with being able to field a team with a 250M payroll against teams that can't afford any mistakes and have 50M budgets. No integrity or fairness. Kansas City's excellence notwithstanding, the process is rigged way too much in favor of teams with big pockets.
Not to get too political, but I see a lot about baseball truly being America's game and being quite a metaphor for the country itself.
Also -- isn't it kind of funny that most of our sports leagues operate on seemingly socialistic principles (salary caps, the worst teams get the best draft selections), while the biggest European sports leagues feature much more open player movement and acquisition rules, and relegate weaker teams?
As for money in baseball, it seems like it helps teams overcome mistakes, meaning the bigger market teams have a greater margin for error. It also allows them to sustain success once they put together a good team.
Nonetheless, plenty of smaller market teams win a lot of games and even go all the way. Kansas City and St. Louis aren't exactly huge markets. San Francisco has been hugely successful, as well, despite having a relatively modest payroll.
Of course smaller market teams can do well. If you disadvantage a group of people there will always be some who succeed despite the disadvantage. That isn't justification for maintaining the disadvantage (I know you weren't suggesting that).
it should be noted that baseball does have some revenue-sharing, and, more importantly, baseball's salary system is a LOT different than other sports. in baseball, teams control young players for many years on low-value deals, and they usually only get the mega-contracts when they're in their late twenties, a time when they're more prone to career-ending injuries or decline. compare that to the NBA, where guys are getting max contracts at age 23.
financially-weak teams benefit greatly from this system, as they can rely on young, cheap talent, and they are usually compensated with a high draft pick when their stars leave for the aforementioned mega-contracts.
this also means the 30+ year-old free-agents get way more money than they should, simply because the young players are getting hosed, leaving lots of cash floating around. so the red sox/dodgers/yankees etc do have the capability of signing those players, but only at hugely inflated prices.
in contrast, in the NBA, the stars should arguably be making MORE than what they are (i'd bet lebron would command $60M in the open market today). same with elite NFL QB's (especially if they're taking a big discount like tom brady). this makes it all the more essential to make one's given NBA market as enticing as possible, as you're getting better value for an elite star than what you're actually paying.
in short, while it is indeed tougher for small-market teams, they do have some ways they can succeed. and i'd much rather be a poor team in baseball than a poor person in america