I see that statement made a lot too, and the only part I take issue with is the "often" part. I've had one that finished higher than 1.020 that was supposed to get down lower, but it was made with all LME that was added at the very beginning of the boil and likely carmelized on the bottom of the kettle. Since it was a dark beer, I figured I didn't care if the color darkened and so I'm pretty sure the reason it didn't finish lower was my flawed reasoning.
I think LME is the culprit almost exclusively when someone has a recipe finish at 1.020 and it wasn't supposed to - it's what I see most often when people list their recipes and logically, it just makes sense since it will sink to the bottom of the kettle and can be hard to get fully stirred into solution, especially for a new brewer that is using LME for the first time and doesn't know what to expect. Yeast health potentially be compounding the issue, as a new brewer is much more likely to make a huge beer and severely underpitch. A new brewer using a metric sh*t ton (scientifically speaking) of LME added at the beginning of the boil, along with some crystal malts and pitching 1 vial or unhydrated packet of yeast into 6 gallons of wort is probably something that happens more often than we know.