Your only option is to eat the extra shipping cost or cancel the
transaction, refund the buyer and relist. Experience is a good teacher,
when this has happened to me, I ate the shipping costs and chalked it up
to lesson learned.
If they complain to eBay, eBay most likely will side with them,
regardless of your own return policy. The buyer will also probably leave
a negative if you refuse to refund. It isn't fair, but I see it as a
no-win for you. I'd give the refund and move...