2004 Mazda 3s, 2.3L

I’ve been getting CEL P2178 and P2188. Essentially, I’m running rich on and off idle.
So far, I’ve cleaned the throttle body, and MAF sensor.
Replaced spark plugs, purge valve, and air filter.
I’ve checked for degradation of MAF and front O2 sensor wires but found nothing.
I’ve also recently checked for vacuum leaks but didn’t find any.

Aside from the running rich codes, I got P2196 (I think) it was the the O2 sensor was stuck open, this was right after I replaced the purge though then cleared itself and hasn’t returned.

The only other symptoms I’ve had are at idle some sputtering and changes in RPM, this only happens when in drive though. If I shift to neutral it immediately stops. It also only occurs when the engine is warm and has been put under a bit of stress.

If you have any suggestions as to what to do next that’d be great.

Thanks!