Another issue which is likely affecting you and which affects many others with late C4s trying to get though the Smog Check is that often, EGR is calibrated to enable only above 17-mph. Obviously, with the low-speed part of the enhanced test done at 15, there not EGR and, in some cases, you end up with EGR content in the exhaust too high to pass.
To find out of that's your problem, you need a scan tester which can read the EGR state in its data list, then you need to road test at slow speed accelerating gently from about 12-mph to about 20-mph and not the speed at which EGR enables. If EGR is enabling above 15-mph, the solution is to have someone who can calibrate a 96, change the cal such that EGR is enabled at 14 mph rather than 17. That way, the EGR system will be working and NOx will go way down.
I do not know for sure if the 96 calibration is like that but it was on my 95 and the solution above is how I fixed it.
If the engine light is on or comes on because of a DTC P0155 (heater circuit, rt. ft. sensor), you'll never pass because, if the MIL is on you flunk automatically. Also, after codes are cleared, all your readiness flags but one must be set or you still flunk.
Yes, the code for heater circuit can set because the sensor is bad, but it also can set if there is a problem with the heater circuity. You can try changing sensors but that might not fix it. Best bet is to diagnose DTC P0155 per the FSM which will help you decide if it's the sensor or the wiring.
As for the tech telling you the engine runs like it's lean...if it is, in fact, lean, it's possible that's because of bad front sensors. It could, also, be that the engine truly is running lean. If so, you need to address that before you try and test because, if it is running lean, that raises combustion temperatures and that, in turn, increases NOx.
So actually, with respect to flunking due to NOx you have one of two or maybe both problems 1) EGR system disabled until 17-mph and/or 2) engine lean making for high combustion temperature and high EGR.