Frankly when only 1/30th of teams fly a different flag than the US one it seems that flags are generally unnecessary and not at all related to baseball. I would also argue that if you're going to fly a flag based on the nationality of the teams, you should consider flying a flag for the nationality of each player on each team, and if you go down that road, flying a rainbow flag for the gay players (anyone suggesting there aren't at least a dozen in the MLB - probably more - alone is lying to themselves.
National flags make sense at the Olympics, when national pride is "on the line." At a game between New York and Boston, we're not watching America v/ America, so why the American flags as a matter of course? Also, why "Sweet Caroline" or "God Bless America" between innings? (That's less about the flags, and more about how much I hate that M*******s made me hate a good song.)