Without getting into the generic debate on whether active cell balancing is necessary or not for any individual applications... I'll just comment on the original question.
You will find a number of bi-directional buck converter ICs out there, I'll maybe dig for some part numbers later, but essentially, any synchronous buck converter IC, (unless already spec'd for working bi-directionally), which does NOT use any current mode control, current feedback or anything to do with an inductor current it'll always assume to be positive *should* work.
Far those op-amps, the first one is still a differential amplifier, it just has a gain of 1/2 for the Vbat input, so the resulting diff-amp is calculating the error between Vcom and a theoretical Vbat/2 and feeding that as an error signal to the buck... I'm assuming that Vbat is made up of two series cells and Vcom is the voltage in the middle, the ideal voltage on that cell would therefore be Vbat/2... a long winded way of saying that each cell will have the same voltage.
The trick to analysing that circuit is to work out two conditions, one for DC and one for transients (AC). At DC the gain of the LPF is +1 and so you can disregard the second opamp and mentally connect Vfb to the right hand side of R6. For transients and AC you can assume that the gain of the LPF is very small and again disregard the second opamp and mentally connect the RHS of R6 to 'ground' this time. So the result (I think.. until I sit down and do some maths) is a higher gain at DC than for transients... which makes sense for control stability etc.
I'm assuming that the idea behind that circuit is to balance any number of series connected by forcing any single cell to be half the voltage of sum of its voltage and that of the one above it. Which in reality for more than 2 cells sounds like a recipe for chaos and fire... in theory it sounds wonderfully simple though.