An '04 rubi shouldn't that still be under warranty? There are several things that can flag those codes. Most often it's a loose or poor sealing gas cap. Other things could be a leaking/sticky valve on the canister valve, purge valve, or any other valves they put in the system. Also a faulty fuel tank pressure sensor, if so equiped, or a leaking canister or hoses. Every vehicle is different, and there are many designs of onboard leak detection. Just throwing parts at it is not the answer. It won't damage anything to drive it; it's a way for the vehicles to recycle the fuel vapors in the tank rather than venting it to the atmosphere.
'98 TJ : 4.0L - 3spd - 4.10's - 33's - HP30 - D44 w/ OX