Why have a maximum limit?
My guess is that a maximum was established to save money, both on player salaries and costs for taking the team on the road. There is no maximum team salary. There is no maximum player salary. So how does a maximum number of players even save money?
Maybe the maximum roster size is to establish parity among the teams. If MLB wanted parity MLB would have maximum team salary. As a practical matter there is a minimum team salary: $400,000 * 25 players = ten million dollars. And/or there should be a MLB player draft each off season to better balance the talent on each team. None of this exists.
Would a team have an advantage if it had more players available for a game. Maybe for a specific game. However, having too many players sitting rather than playing causes problems, which might outweigh a short term advantage.
Why doesn't the MLB players association make this a bargaining position? It's as basic as collective bargaining can get, an increase in membership.
If there were no minimum number of players why wouldn't a team ... oh, let's say the Pittsburgh Pirates ... carry only 20 players? If the minimum player salary is $400,000 that saves Pittsburgh a cool two million dollars, two million buckaroos! Pittsburgh is pocketing the "luxury tax" that it collects from the big spending teams such as the Yankees, so why not reduce payroll even more. Pittsburgh can barely wait for a young player to become eligible for salary arbitration to trade the player away rather than pay hm much more than the minimum player salary.
Make the roster size unlimited and expose just how cheap Pittsburgh is. At least then teams can carry extra catchers.