Here's my solution:
'captcha-form' is the id of the form containing the captcha. Remove the script tags so the scripts don't get executed a second time when Safari re-renders them after jQuery moves them. The event handlers created by the script aren't in the script tags, so they survive.
Works in Safari and Firefox 4. I'm now off to test this in some other browsers.