Granted there are some bad owners who just want to leech off the system, have no intention of spending any money on players or putting together a championship team. Setting those aside, I wonder how many owners from the flyover states would be willing to spend money on players, but have no choice in the matter because no superstar is going to sign a long term deal in Kansas City for the prime of his career, when he can get the same money from Los Angeles or New York.
Set the cap at something like 150-170M or whatever, all of a sudden the Dodgers, Yankees, Mets, Braves, Astros, Cubs, Giants can't even sign a guy like Yamamoto if they wanted to. You guys think that means no one signs him, or do you think it means one of those smaller market teams with "grifter owners" who "don't want to spend money" ends up with him? My guess is on the latter.
Not necessarily advocating for a salary cap in the MLB, but you can't deny that it would change the landscape from every big free agent narrowing it down to the same four teams every time.