We used to be in the same boat. We've started a policy a few years back by emailing the CSR's the time spent fixing a job (or how much time it would take) if it goes beyond X amount of minutes, but also cc'd upper executives as well. Relentlessly bombarding the exec's with this info has helped increase recouping costs as well as giving the customer the option of supplying new files that would take just a couple of minutes to process rather than 4 hours. You'll be surprised how many customers submit corrected artwork after the initial price shock. It benefits all parties.
I've fought and lost that battle so many times I've given up. Unfortunately, it's a matter of charge extra for the extra work and probably lose the customer. You may well think that customers like that you don't need, but not in my market.