First off, LEDs don't need resistors, they need a constant current.
If you don't want to waste energy to heat, you have to use a switch mode power supply to bring the voltage down efficiently. The LM7805 is a linear regulator, it can be seen as an advanced resistor, you won't gain any energy benefits.
Based on the comment you want to connect them in parallel, basically they shall have the same colour. In this case you only need a 3 channel design and could connect them in series, so that the current will go through both LEDs. And you use standard 5 mm 20 mA per LED RGB LEDs. Good to know.
There are switch mode constant current drivers around, but they have a rather large quiescent current (roughly 1 mA per channel) so that would come to 3 mA quiescent current. They can be quite efficient (depending on the output current) and most of them allow PWM dimming. Let's throw in some ballpark numbers:
The current sense resistor drops 100 mV. The diode takes another 0.4 V (probably less). Because of the low current of 20 mA, the inductor needs a high inductance so the resistance is going to be a bit higher than usual, let's say 1.5 \$\Omega\$ because you want it to be small. So that accumulates to roughly 10 mW of power losses plus the IC, we end up at 17 mW of power loss. The output power is dependent on the LED voltage so assume 2.2 V for a red one and 3.2 V for the blue one, as you connect them in series the voltages will double. The output power would be between 88 mW and 128 mW. Efficiency would be between 83% and 88%.
A simple resistor with a 9 V battery would give you 24% to 35% or in a series connection 48% to 71%. So it's not that easy to decide, it will be more efficient and you will have a longer battery life, but it's debatable if you really want to go through all the trouble.
And there is a big BUT: The 9 V block will drop in voltage down to 4.8 V if you want to salvage all the energy. That makes a series connection only usable if you have a buck-boost type of switch mode supply, they are less efficient, so probably not worth the trouble again. I can't tell if a buck mode down to 6.4 V will last longer than a simple resistor down to 4.8 V. I think my second suggestion would be a better approach. Another thing to realize is that with dropping voltage the current and brightness will decrease quite noticeably for a simple resistor.
Using SMD components a 3 channel design should be doable on a 4 x 7 cm² board. I could fit a single channel in a 11 x 25 mm² area. I've used a AL8805, which worked reasonably fine.
Another suggestion would be to use a small lithium ion pack. There are plenty around for the RC hobby market. I have a pack at my desk which is just a bit bigger than 9 V block battery but has 2 times the capacity of a standard 9 V block. And as an added benefit it's voltage is 7.4 V so you will waste less energy. With that approach I would definitely go with a series connection of the LEDs and just resistors. The lithium ion pack will also hold it's voltage much better so the current won't vary much over the lifetime of your battery, which is a problem in case of the 9 V battery approach and just resistors.