Constrained FABRIK with stiffness factors can get you very close to what a Jacobian solver has to offer.
No, it can't. FABRIK also can't cope with squash-stretch to sell a motion. I started with porting Caliko to C++ and abandoned it very quickly as spring-systems gave superior results for my needs of remapping animation that was designed for one morphology onto another entirely different morphology.
Your implementation might have some capability for that, but that would be unique to it.
Jacobi has the best fitment and greatest constraint support. Springs have the best behaviour and though constraints are slow to solve they're trivial in implementation (just plot a quadratic or form a plane sequence upstream). When OpenCL'd they can be solved independently without consequence since they're springs.
FABRIK is just a bad variation of spring-constraints, unfortunately it loses the desirable qualities of springs. I'm running IK for all animation in SprueKit, which is a Spore-Creature-Creator clone, I've been through all IK methods, springs are the only thing you can trust. Even Cholesky methods will fall on their face, despite the fact that they conventionally slaughter Jacobi. Cholesky is so close to right and stable that it's disgusting that it could be wrong.
Springs really win when you have to solve 30k constraints per frame. That's nothing. 240k constraints are still nothing. (OpenCL of course ... CPU that'd be death)
Calling it a bad variation sounds worse than I mean, it's good enough for most cases. It is not good enough for "I'm going to IK everything" like I do or "I want solid stability." FABRIK is basically a tweaker.