My theory is that while souls are automatically very firmly attached to their living bodies, they are automatically repelled by their dead bodies like matching poles on magnets. Forcing Liam's soul back into his corpse would require a powerful restraining mechanism: the Kalderash's curse. The other part of my theory is that a soul is stronger when it is happy and loved (and I would further submit that this can only happen when the person in question is good, because evil and happiness are incompatible). This is a problem for Angel because his curse was only calibrated to hold a miserable soul, not one that's radiating joy because he found true love and a noble purpose. It doesn't matter whether or not he wants his soul to stay put because it's a simple question of physics (or metaphysics). What's pretty impressive about Angel is that even at his soul's weakest and most miserable, he was still stronger than his demon. He drank the dead doughnut shop guy, attacked that Romanian lady, and killed dangerous criminals in an attempt to impress Darla, but he wasn't capable of murdering innocents for the sake of a meal or sadistic enjoyment anymore.
So this theory can't apply to soulless Spike at all, because it's about how souls work and he doesn't have one. Even if the inverse is true (that a vampire's demon grows weaker when, for whatever reason, the vampire is doing objectively good things), it still doesn't matter for soulless Spike, because there's nothing else in there to compete against the demon. I'll try to break this down more, because I expect it might be a sticking point for some people. Imagine for a second that you could weigh the good and evil in a person's heart. Say that in S2, Spike's heart contains 100g of evil. In S6, after years of working with the Scoobies and being unable to act out his worst impulses, maybe it only contains 10g. Even if this is an accurate reflection of how he changes before getting his soul (which I strongly doubt), in the end it makes no functional difference. Without a soul, it's impossible for there to be so much as a microgram of goodness in there, which means that whether there's 100g of evil or 10g, it's still 100% of the overall weight. Soulless vampires don't operate on a morality spectrum of good to evil, because they're all 100% evil. Instead, they operate on a spectrum of incompetent (vampires like Harmony) to devastating (vampires like Angelus).
I've argued with Spike fans who suggested that maybe Spike has always retained a fragment of his soul, from when Dru first turned him. If true, this would dramatically impact that good/evil weight ratio over the course of his arc, but then we'd have to deal with what kind of person he is if he could happily slaughter and rape people for over a century without so much as a twinge of doubt, and only stopped when forced to by the chip. It doesn't really seem like a great theory if you want to still be able to like Spike. However, there's no evidence to support this theory in canon, so I don't buy it. The only vampire in canon who has a logical reason to have kept some or all of his soul upon turning is Lawson, because he's the only vampire ever sired by a vampire with a soul. (Although I guess there's also all the vamps Spike turned under the First's influence, but the only one we spent any time with, Holden Webster, seemed pretty cheerfully evil to me.)