I had an over authorization on a Debit card once too (Not at a Marriott, but at a car rental). They fixed it on the spot, when I saw it was still on my bank account, I just called my bank and they reversed it letting me know I would be responsible for any over-draft fees should it actually go through.
With hotels, I have never had the pre-authorization stay on my account more than 1-2 business days after checkout. I guess it depends on a. when the hotel settles the pre-auth, and b. when your bank recognizes the settlement.
Both of those examples are from a large national bank.
I would assume this has more to do with your bank than Marriott.
My current Credit Union does not even encumber any pre-auths, so if the hotel pre authorizes $1,000 on my debit card, nothing is held on my account.
Lately, I only use my Marriott Rewards Card or Company Card, so its not an issue at all.