I have discovered some things about the glitch that prevents Sims from becoming soulmates. If your Sim is being romantic with another Sim outside the house, and all romantic interactions are done in one meeting, from no romantic relationship to soulmates, the glitch won't occur as long as you don't allow the relationship to decay to lovebirds. If you do some romantic interactions and the Sim leaves and your Sim meets that Sim again later and tries to become soulmates, the glitch always occurs in my game, so long as the romance bar was below 50 after the first meeting.
I believe that the glitch is caused by the game getting confused between two different statuses of relationship, both called lovebirds. At any positive level of friendship, if a Sim's romance bar is between 25 and 50, the status is called lovebirds and shows a symbol of two Sim faces with a heart above and between their heads. However, if their relationship isn't glitched and their friendship is at least at 60, there is another lovebirds status which is represented as the same two Sims, but with three hearts above their heads. In a glitched game, this status does not occur, and the status is stuck with the picture of the Sims with only one heart. I think the game refuses to reach Soulmates because of this, since it would involve skipping a stage of lovebirds.