How long does it take for an unconfirmed transaction to reverse? I have had an unconfirmed transaction for 1 week. Will this transaction automatically reverse or do I need to do something?
There is no estimated time, and in fact this transaction can potentially get confirmed at any moment, though the less likely the lower the transaction fee was.

To fully revoke it, create another transaction that overrides it, and put a higher transaction fee to make it more likely that it will get confirmed before the other one.