If the check engine light is "on" all the time it means you have a diagnostic trouble code stored in the engine control module. To find oun what that code is turn the ignition switch "on-off-on-off-on and leave on" doing that in 5 seconds or less elapsed time. Then watch the odometer window to see the mileage reading replaced by a 4-digit number preceded by a P. Let us know what you find and we'll go from there.
On the inaccurate gas tank reading it could either be a faulty gas level sensor inside the fuel tank or it could be a fault in the instrument cluster gas gauge. The first thing to do is check the cluster by doing a calibration evaluation of it. To do that, with the ignition switch Off, depress the Trip Odometer Reset button and keep holding it until you see the odometer reading in that window be replaced by "SOF" followed by a number, then release the button. You will then watch the odometer window change to show another number or by "end". Notice which you see. Then start watching the four gauges to each go through a set of readings which are calibration testing and specifically watch the gas gauge to see whether it reads "empty" then 1/4, then 1/2, and then full or not. If so, then the gauge is OK, and if not then it is at fault which requires the cluster to be replaced. If the gas gauge reads as described, then the problem is in the fuel level sensor in the fuel tank and there is info available on how to replace that. So try these tests and let us know what you find.