The problem here is that the skill involved with being a PM are equivalent to janitorial jobs. Anyone can do it. Anyone can have intuition on how they think a product should work. This is not a high skill job. The work itself is not easy, just unskilled. The person in this role has to spend ALOT of time diving into the purpose of the product and thinking of new features... etc. Anyone can do it but not a lot of people are WILLING to do it.
What makes this role hard to find good people for is that it's hard to quantitatively measure how willing a PM guy actually is. Instead we end up measuring the persons political skills. How good is that person at making you THINK he cares about the product? And that is the metric and bar you need to be good at to land the PM job. Politics is a hard skill. It's hard to measure and it's hard to train for.
What happens is we try to measure skills in one dimension but politics and charisma can cover it all up. People can bullshit their way past everything. That's why algorithm questions are so pervasive in the industry. It's a way to cut through the bullshit specifically for software. It's a blurry metric but it is effective at removing a certain level of political bullshit.
For PMs you can't cut through the bullshit. Evaluation of the PM is directly through an API that is literally bullshit politics. The more charisma and the better you are playing politics the better you will be perceived at being a PM.
So what you get are a lot of shit PMs who are managing more politics than product. If the product doesn't do well, the PM is usually skilled enough in politics to redirect blame away from him. Both hiring for a PM and keeping a PM job is just a process of filtering for political skill.
A good example of a really good PM is Steve Jobs. But note his PM skill was orthogonal to actually keeping and holding the PM position. He got his own ass fired. He only came back because the company became desperate. This rarely happens in the real world where a fired PM will come back to his old job.