Google has tons of information on you - way more than it needs, and yet it still doesn’t get recommendations as good as we expect (as you rightly point out).
So the issue is that it has tons of extra data than they need because it * doesn’t make their recommendation any better.*
Gathering data for the sake of gathering data in todays world of information privacy and hackers, leaks, etc. And that is what they are doing.
In my opinion (sample size of 1), YouTube is incredibly simplistic in its recommendations. I find it very hard to believe that they couldn’t achieve the same quality with much less info on me.
For instance, my IP changes when I travel, but I’m an American who speaks English, and yet YouTube insists in showing me local ads in different languages when I’m in foreign countries, despite having my home address (verified with my credit card no less!!!) That’s just laughable.