In this case, it guarantees that no two people would rather trade with each other than with the person they actually traded with. In that sense, the stable pairing is pareto optimal.
I don't care who I trade with. No one does. It's anonymous anyway, unless you trade with certain official market makers. Also, I don't care if my one order for 400 shares@$100 matches with 1 person selling 400 shares@$100 or 400 people selling 1 share@$100.
Trade matching is not the stable marriage problem. Get a clue.
You certainly care what the price on the other side is if you are getting the spread or some fraction of it. That is what determines the preference ordering to run the algorithm.
Sure, that's stable, but it doesn't have a unique solution. Many solutions are stable. How do you pick from the stable solutions in a way that doesn't just recreate the problem?
For example if you say, "a random trader gets to be the first proposer", then the firms with more money just flood it with trader entries, increasing the chance that they get to be first.