Your customer is technically owed a refund or replacement within a reasonable time after the stop payment order is issued by the customer and accepted by the bank. There's no definition of what's considered a "reasonable time," but since the customer is entitled to place the stop payment, once you've verified that the PMO hasn't been presented and paid, you really have no reason to hold on to the funds any longer.
Personal money orders -- those sold by the bank but signed by the purchaser or remitter -- are generally considered "single use" checking accounts and subject to stop payment rights. A bank money order -- one signed by a bank official -- is generally considered to meet the definition of a cashier's check and would not be subject to a stop payment, but would be subject to UCC section 3-312 with regard to a claim that the check has been lost, stolen or destroyed.
Your state has an abandoned property law and regulations that specify when funds represented by uncashed money orders have to be surrendered under "escheatment" rules.