My 1.8 NB recently failed on CO, but lambda was OK. New sparks, air filter and a dose of cat cleaner in the tank, plus having the emissions test ready after a spirited blast made a HUGE difference. Your lambda is a bit off though so maybe some other issue like an air leak. Still the cat cleaner is not v expensive.and worth a try, and new sparks might help too.
Before letting anyone test my NBFL for emmisions I make sure the oil is fresh, improves compression less likely to burn in the cylinder, like you fresh air filter, fresh plugs, fresh pcv valve on the cam cover breather. Make sure the petrol filler cap is tight plus one click to ensure the EGR works properly. Currently I drive mine 125 miles to the MOT test station so that there is no chance of there being any condensation or debris in the cat or the rest of the exhaust system. Good luck.
I had my NBFL Terracleaned a few years back and it lowered emissions considerably. About £100 and they used to give 10% discount to members. Look up you local garage that does it and check pricing. Well worth the money.
High lambda number means it’s reading a lean condition but high CO means it’s actually running rich
So I suspect a pre cat exhaust leak meaning the cars lambda sensor senses too much oxygen, triggering the ecu to inject more fuel to balance it out hence producing excess CO . you should also check the vacuum lines for any leaks as unmetered air will cause it to run lean. Check the spark plugs to see if it’s rich or lean. Black soot means rich.