I have a 2015 Buick Encore with 109,000 miles. CEL with PO420 comes on in city traffic at low rpms. If I erase the code with my scanner, I can drive for hours on the highway at high speeds without the CEL coming back on. Eventually, when I return to city traffic it soon comes back on. What would make that happen? Could there be a leak somewhere? The code first appeared immediately after having work done to replace the turbocharger, PVC valve/intake manifold. They told me at the shop that the catalytic converter needs to be replaced.
Have you checked the simple stuff like O2 sensors and ensuring they have a good connection?
Also this article has a lot of info about P0420 codes. Hope this helps! Article link: https://www.obd-codes.com/p0420