This is all true, and I don't dispute that the B450's and X470's are limited. The question is does that actually matter, and there are a vast range of use cases where it doesn't - most gaming builds, for instance. PCIe 3 doesn't affect gaming GPU performance unless you are using one of the crippled AMD low-end units. Likewise for PCIe 3 vs 4 running NVMe SSD's. I would defy most users, including gamers, to subjectively tell the difference between PCIe 3.0 x2 and PCIe 4.0 x4, never mind PCIe 3.0 x2 vs x4. Put your most-used games on the x4 NVMe and use SATA for bulk storage.
There are absolutely use cases where all the above matters, but they are very very far from the majority, IMO. If I had a B450 or X470 motherboard, I wouldn't stress over whether I should keep it while upgrading the CPU.