A smaller engine does not get better economy by default.
If you were simply rolling around at 25 mph all day on flat ground, then it might. BUT, that's not how driving works. We have to start from "cold", we have stop signs/lights, hills, corners, etc... a smaller displacement engine has to work much harder (more air/fuel) to do the same work as a larger engine, except at very low speeds and loads where internal friction makes a difference. (And in a chrysler, where it doesn't matter how you drive, the mileage is still bad)
We had a 1996 olds with 3.8L and it got 31/32 mpg all the time. Hand built motor with gobs of power. We never wanted more from that car.
We had a 2002 sunfire with a 2.2L and we always wanted more power. It revved too high and was underpowered. The economy was around 28 mpg on country roads, and would drop when in town or at highway speeds. (I have the engine/trans from the olds and plan on putting it in the sunfire.)
My truck has a 4.9L inline 6 and has gobs of torque and enough hp to make me happy. It gets around 25-26 mpg avg between empty and loaded. (Loaded meaning 4-5,000 lbs of firewood) It would easily zip right up to 120+ mph with the old 3.55 gears and not even care. It could get 28-32 mpg with the 3.55.
A (well designed) bigger engine will get a vehicle up to speed without needing higher throttle opening. Take a look at BSFC maps of different engines and compare the fuel to output ratios.
A bigger engine will use much taller gearing than a smaller one because the smaller one needs all the help it can get. Shorter gearing combined with an underpowered engine will use a lot more fuel at higher rpm and load than a bigger engine that is just idling under the same load.
I can drive my truck without going over 1,000/1,500/2,000rpm. Pick any of those numbers, because the only thing they limit is the top speed. If an engine can't effectively power the vehicle at those rpm, it's too small.
Torque is what gets things moving, and can be directly measured. It's what you feel when you take off. Hp is a number we have to calculate and is rpm dependent. If you need high rpm, your economy is not going to be very good.
A chainsaw has very low torque but high hp, with the hp being ~2.5x the torque. They have to rev way up to keep from stalling under load, and the economy is not great.
1-3 ft lbs of tq and 3-8 hp
A large diesel truck has a ton of torque and not a lot of hp, with hp being ~1/4 of the torque. The engine runs just fine at very low rpm's and will not stall. The economy is very good considering how heavy the trucks are.
2,000 ft lbs of tq and 4-600 hp.
My truck has ~260 ft lbs of torque and 150 hp at relatively low rpm. Great fuel economy.
Compare that to a 3 cylinder engine with 70 ft lb and 70 hp. It's not much torque and it's at 3,500 rpm. The hp is at 6200 rpm, which means the car is going to be unbearably slow with ok economy or a little quicker with poor economy.
The problem here is bad business and economics. People like a cheap car that looks flashy, but they gripe when it breaks. Manufacturers don't want to spend money on important things, but will spend it all on flashy things. It is cheaper to build a high rpm 1L engine than a low rpm 2L engine. The common thought is that less weight means more mpg, and that smaller engines get better economy. It's a "forked tongue" statement. It's sort of true, but only in certain situations.
A lighter car only gets better economy when taking off or climbing hills. A smaller engine only gets better economy under much lighter loads. A small reduction in vehicle weight does not warrant an even more underpowered engine that has to work in a higher rpm range.
Let's look at the sunfire/3800 combo for a minute. The car would have about twice the power and be ~800 lbs lighter. My estimates are around 40 mpg. The engine is heavier, but it would be in the back seat, which is a pain to get into anyway, so it would "still" be a 2 seater and the balance would be much better.
I think you should have kept the corolla.