This sounds like one of those Board Games where you have to decide what to do.
« The girl next door finds a €50 note on her drive. Would you let her keep it? »
What you have been refunded beggars belief. You have been scrupulously honest. It is now up to American to deal. You have flagged it, and now it’s up to them. It sounds like too many zeros were added. I think that once you had told them all you should do is let them get on with it. You don’t work there so if they want their money then it’s up to them. Someone will be blamed and probably fired over an error of such magnitude. Clearly their controls are completely deficient that this was not checked.
You have had a really fascinating dilemma and a far lesser,person would have kept silent. Me? I’d not sleep at night and would feel bound to do the same as I may have many defects, but dishonesty is not one of them. I would however get the money of Amex with a refund and park it in a savings account knowing that you were in a position to repay. However I do not know if you can do this, in France we can.
Whatever else you deserve a reward for your honesty.