Use Shopify's built-in "Duplicate" feature to copy the order. You would need to get payment info from your customers again. Then cancel/refund the original. This is a better option unless your average order amounts are very large ( b/c transactions fees aren't returned to you, and customers wouldn't wanna be charged 2x of large $ ).
Use 3rd party apps. Some of them can create nightmares : https://apps.shopify.com/search?q=edit+order