A money order CAN be cancelled as long as it hasn't cleared.
The regulations may differ between issuing institutions, but technically a money order can be cancelled if the purchaser claims that it was lost or stolen.
Lost or Stolen Money Orders
If you have purchased a money order that was lost or stolen prior to using it, you can fill out paperwork with the issuing institution to have your money refunded. There is generally a fee that applies to these search requests similar to that of a stop payment request on a personal check.
For the Recipient Fearing Fraud
If you have sold goods to another party that has paid by money order and you are afraid that he or she may attempt to cancel the money order, it is in your best interest to cash it immediately. If the person who issued you the money order fills out the necessary paperwork claiming the check was lost or stolen, the issuing company will place a stop payment order on the check and refund his money.