Here's my take. Instead of ejecting players. Have them sit out 5 min of play time. (Like a penalty box in Hockey except the team isn't short a player.)
Here's another thought....(but I don't know if it's the best idea.) In this day and age of big NIL$ the other thing that should be considered for fighting or malicious personal fouls should be to fine a player. If a player is one that has very little NIL$, then the teams collective should cover it. If they want to get paid like pros, then we need to treat them more like pros. I'm not sure if there's a real fair way to do that though.