In fact, the battery charger, included in my 12V inverter, uses a triac (actually 2 or 3, to cover a wide input voltage range) at the primary side (when mains power is on). I sold about 2000 sets during last year. I mean it is a practical idea.
The first important note is to add a choke (not less than 100uH inductance at 50Hz, with air gap).
Obviously, I use an MCU (actually AT89C2051) to regulate the charging current (actually about 20A) and limit the battery voltage (actually at 14.5 V).
After reaching the voltage upper limit, the charging current is allowed to decrease only, till the battery voltage reaches a lower limit (actually 13.5 V).
In case of a fresh/good battery, this ending current decreases gradually till it becomes equal to the very low internal leakage one of the battery while its voltage stays in the range 13.5-14.5 V.
To monitor the charging current, I use the shunt of an ampere meter (actually, rated at 100A maximum, to also display the inverter current).
Unfortunately, the stability and reliability of this sort of charger depends mostly on the software (MCU firmware).
But perhaps you can find a solution using hardware only. I usually have to include an MCU in every product I design and sell to avoid its exact imitation
Please be free asking any question (and as many as you like), as long it is not a question about the whole design
Kerim