Having officiated games ate levels from 8U - HS, the biggest time suck I see is 2 areas.
1. Time between innings. At the levels I do - this is on the umpire and not managing the game. I discuss expectations at pre game. When the first pitcher delays getting on the field because the catcher isn't ready or coach doesn't warm up while catcher is preparing - and that pitcher gets 1 warm up throw because they are over 1 minute from the last out - they get the message quickly - it doesn't happen again.
2. The batter stepping out. Again - expectations are discussed at pregame. The first batter gets a warning - and announced to the team. "stay in the box - or a strike will be called".
At youth levels - coaches are calling pitches. Signs every pitch. They are over coaching the game and that eats away at the time. It also retards the development of the kids to understand / learn the game. Players don't think any longer - they just listen to the coaches and do.
At the MLB level - the time between innings is dictated by TV. 2 mins for regional 230 for national broadcasts (I think). In a 9 inning game - that's 18 changes of sides - that's easily 15-20 minutes if they cut it down to 1 minute.
Revenue can be offset by 10 second spots between outs. I don't buy the argument that it can't be done. Soccer broadcasts 45 minutes with no commercials and they make a ton of money at the top levels. The clubs also support a robust minor league development system.
Also at MLB level, every time a ball hits the dirt or is put in play - time is called and a new ball put in play. those are only 5 seconds - but over the course of a game - add up to another 10 mins or so.
Just one person's observation.