If you did randomized matching and 1 market participant seemed to have very good "luck", how could you convince the other market participants that the fix wasn't in? You have to understand that modern markets assume the worst case when it comes to collusion, insider trading, etc. Randomized fills is the worst case scenario given those assumptions.
What about psuedo-random that uses the trades themselves as a source of entropy?
However, I thought that you had a list of numbers at least as large as the number of trades expected in the 5 minute period, then you could order the trades by shuffling the numbers. I think it would not be too taxing to determine whether the sequence over time is random enough.
That said, I'm starting to see whether that it would impossible to know whether any particular 5 minute (or maybe day's worth) of trading is random enough. Perhaps crypto can come to the rescue here. Publish lists of random numbers in advance pgp signed.
Anyway, enough of my ramblings :-)