It is normal to charge lead-acid batteries in series. As they are used, the cell voltages will change, which is why they are not charged in parallel. If they were charged in parallel, the one with the high voltage wouldn't get much current, and the one with the low voltage would get too much current.
With the cells in series, they all get the same amount of current, and all get approximately the same amount of charge. Since they will not charge and discharge exactly the same, the battery voltage and level of charge will gradually drift apart.
To handle this, it is common to periodically do an "equalization" charge, where you overcharge the string slightly to bring up the charge of the undercharged cells. You do this because lead-acid batteries handle overcharge better than they handle undercharge.
You have done that, and at least one of the cells has gassed. Check the fluid level, and next time charge to a slightly lower voltage. Only do equalization every couple of months. If some of the cells fail, it will not be possible to charge the battery fully. When that happens, it is time to throw out the battery.
Note that you cannot just put lithium cells in parallel without balancing them first (to make sure they are equally charged).
Also, you cannot just charge Li-cells by applying a voltage, if you do that, don't be surprised if the cells get too hot or even explode ! You need a dedicated charging circuit or module.
But let me propose a much simpeler solution:
Just balance your cells, then connect them in parallel. Charge them using a charging module, feed that module form a 5 V power supply. These modules can easily be found on ebay.
To make the 12 V for the LED strips, use a DCDC boost converter. On ebay you can find these and most have a trimmer to set the voltage to the 12V you need for the LEDs.
You can also feed the arduino from this 12 V, make sure you connect the 12 V to the power adapter socket (Vraw) so that the voltage goed through a regulator which will supply 5 V or 3.3 V (depends on your Arduino module) to the microController.
You can make it extra fancy by monitoring the battery voltage through a voltage divider and feed that to the Arduino. When the battery voltage gets too low then the Arduino can detect that and switch off the LEDs so that you know its time to charge the batteries. :-)
Best Answer
That is only the BMS. It is not a charger. You must not use a power supply, as it does not know how to charge a battery. That might end up quickly in explosions and flames. What you need a is a battery charger for 3 cells.