I was wondering if anyone knew how to fix it so that the LEDs don't
dim at all.
A better 9V battery would do it. Using a more efficient LED would go a long way as well.
The type of batteries makes a big difference. Three 3V coin cells would have low capacity. But they are lithium and have a flat discharge curve so the LEDs remain brighter over the lifespan of the battery.
Voltage discharge curve for a lithium battery.
A 9V lithium battery would do much better than a 9V alkaline.
With a 100 Ω resistor on the 3 LEDs, you are drawing only about 5ma when the battery is fresh. It appears the LEDs have a low luminous intensity (mcd) and the battery is weak.
When powering LEDs with a battery it is a good idea to use high intensity (brighter), high efficacy (more light per watt) LEDs. A good LED will cost about 25¢. That cost will quickly be made back in battery savings.
The LEDs you are using are not very bright to begin with. If you use brighter LEDs your eyes may not perceive any difference.
The best 5mm round blue and green LEDs are currently the Cree C503B-BAN-CX and C503B-GAS-CB
The LEDs in the video were were very dim, maybe had a luminous intensity of a hundred mcd. The Cree LEDs have up to 90500 mcd (green) and 23500 mcd (blue). Both these LEDs emit about the same number of photons (µmols/s), it's the perceived sensitivity of your eyes that change the luminous intensity.
Your simulation is not using the correct forward voltage. Blue and green LEDs have a forward voltage around 3V. Red, orange, and yellow are about 2V. This makes a big difference when the total forward voltage for the 3 series string of LEDs is greater than the 9V battery. Especially when, with use, the battery discharges down to its cutoff (dead) voltage.
I've heard of using a voltage regulator, but I didn't think it would
be needed as the circuit seemed to run fine when I built it on
Actually for a battery powered LED circuit a constant current (CC) controller is the typical option. Although if lighting a single white, blue, of green LED a 3.3V voltage regulator would also work well as the difference between the supply voltage and the LED's forward voltage is not that great given very good efficiency.
There are many current regulators made especially for alkaline, Lithium, NiMH, and LI-ion batteries.
If you drop the current of the Cree blue LED to 4 mA and the green to 1 mA, the LEDs will still emit over 200 mcd. By reducing the current the forward voltage drops below 3V. Then you use a supply voltage of 3V-3.3V and LED Vf of 2.9V to calculate the resistor values.
The problem with battery powered boost CC controllers at low current and low voltage, is the efficiency is not great. For your project it would be most efficient to use a boost step up voltage converter. Step up a the battery voltage to just over the LED's forward voltage.
Using the Cree LEDs you can run the green LEDs at 1 mA and the blue at 4 mA. Using an efficient low current and low voltage switching voltage converter like the TI TPS61261 and tweaking the output voltage to just above the LEDs forward voltage, you will have a very efficient design.
With a 3.3V regulator, you use a 400 Ω resistor for the green LEDs and a 100 Ω resistor for the blue LEDs. If you adjust the voltage to 3V then use a 25 Ω for the blue and a 100 Ω for the green you get even better (≈10%) efficiency.
Using a high intensity LED you can lower the current draw on the battery so the voltage does not drop when you turn on an additional LED.
When you use a battery with sufficient capacity, the voltage will not drop when you turn on an additional LED.