Dynamic-wind was created to tame call/cc and exceptions, rather than being in conflict with it. It directly provides the facilities for re-re-setting things when you re-enter a left scope.
However, you might want to look up delimited continuations as a different approach to similar kinds of control flow.