No internal filler flap?

2009 Hyundai Sonata. Check Engine light is on. When filling gas the pump nozzle clicks off every couple gallons unless I invert nozzle so handle is pointing up and that sometimes fills tank all the way with no need to restart. I notice there is no little internal round metal flap that closes to prevent gas fumes to exit the filler hole. Printout from dealer shows history of these DTC codes: P0106, P0449, P0605. I would really like to get the check engine light to go and stay off. (It sometimes goes off for a while after I fill up the tank.) Gas cap seems normal. Any inexpensive recommendations?

P0106, MAP sensor system, P0449 Vapor canister vent system, P0605 Powertrain Control Module.

Has this car ever been in a flood? All these codes could be due to corroded wiring connections. I would get the codes read for free at an auto parts store and deal with the code or codes that are causing the check engine light to be on now.