Companies are social systems and they develop down some path. I think it can be the case that everyone in them sees some subset of the dysfuntions and cannot stop them and everyone is incentivised not to.
This is why startups have a chance, right? If the larger companies were also efficient it would be impossible to beat them at anything.
Why a mere number like a headcount should matter at all knowing fully well that it can be gamed? Shouldn't the motivation be get "more done with less"? This way the manager would be incentivized to gather only the best in his team and the best will only agree to go with him if he is really good at his job.
I think it truly is harder to manage larger numbers of people - absolutely requires skills that aren't so critical in a small team. There's too much complexity to micromanage so for one thing you need to be good at picking out leaders who can help you keep on top of it all and you need to lead them to solutions without being able to dive into the details like you might have as a developer. I think it's bloody difficult and I'm only one level up now.
That said, I also think some people like to make solutions overly complicated which ends up requiring lots of people. In some companies the simple solution (e.g. django and postgres) isn't seen as "enterprise ready" or whatever. So they end up with lots of people on something that could have been done more simply with 2-3. Then maintaining that takes lots of people and then everyone in the team has an interest in keeping things as complicated as possible - in selling the "we will need it one day" idea.
That also combines with impossible tasks - like "lets rewrite the complicated slow old system while keeping on adding features to it" and so on. Then there are never enough developers to do the impossible task - especially as the rewrite turns out to be complex and have issues too.
This is why startups have a chance, right? If the larger companies were also efficient it would be impossible to beat them at anything.