You're not stupid! You must be very intelligent to have breezed through high school the way you did and make it to university. But I completely understand how frustrated you must feel, especially since it sounds as though you're totally dedicated to school and like going.
It sounds like you have an awful lot of stuff going on in your life that makes it really difficult to keep studying for school as a priority. Is it possible you can decrease your work load? Maybe work less hours or take fewer classes? Or maybe you could try doing the homework/studying for your classes while you're already on the campus, before making the long exhausting drive home?
I hope you can find a solution that works for you..