> a 180Ah pack of LiFePo4 batteries (40 cells).
> without breaking the bank of course
Seems to me you already broke the bank?
> I don't want to let the individual cells charge past 3.6V (or below 2.9v)
Put them in parallel. They WILL be the same voltage.
Of course your currents will be huge. And a shorted battery will burst violently.
> I need to keep the cells balanced within the pack.
40 individual smart-chargers?
The only ways to charge many-cell battery arrays are parallel and series. The only sane way to charge high-current cells feeding high-voltage loads is series-charging of MATCHED cells. "Chain is as strong as its weakest link." For a minimum-weight maximum-strength chain, EVERY link must be the same.
There may be some inexpensive way to add 40 monitors to indicate that a cell is unhappy. Just an R and an LED per cell will give a visual indication of gross unbalance. But then what do you do? Cut it out? Leak charge current around it? Isolate it and have 40 small boosters to increase charge to individual cells?
The cost, weight, and complexity soon lead to a contraption which is unreliable and unmaintainable, and maybe a bit heavy. Whereas a ton of dumb old lead-acid cells from the same lot can usually be charged in series without individual cell monitoring, for several years, and then can be replaced for much less than Lithium prices.
What is really happening is that lead-acid is built "robust", has the heavyweight market locked up. The only niche for Lithium is light-weight, and the tradeoff is much less robustness, therefore much fussier maintenance. In a 6-cell laptop, same-lot Li cells match well enough for simple series charging with acceptable life at modest cost. In a 40-cell electric car, matching is not so easy, and the bank is already broke, so there is a real problem.
My next car may be a wood-fired steam engine. Zero electronics.