custom-background callback breaks media uploader

Long shot, but if you happen to not follow the recommended format and include the number sign with the HEX code when you define the default colour in your theme support, like this:

if (function_exists('add_theme_support')) {
    $defaults = array('default-color' => '#666');
    add_theme_support( 'custom-background', $defaults );
}

Then, with your code above, you will end up with HTML like this:

<style type="text/css">body.body { background: ##666; }</style>

That’s going to mess up a lot of things (in the front AND back), not just media uploader.