Wordpress - Use default value of wp_customizer in theme_mod output?

Sadly not - all your customize controls are hooked onto customize_register, so they'll only ever come into play when customising the theme for the first time.

get_theme_mod() takes a second argument for a "default" value - yes, it means two instances of data in your code, but it's a half-solution.

I guess a more DRY approach would be a coupling of globals & helper functions:

$my_theme_defaults = array(
    'foo' => 'bar',
    'baz' => 'boo',
);

function my_theme_customize( $wp_customize ) {
    global $my_theme_defaults;

    $wp_customize->add_setting(
        'foo',
        array(
            'default' => $my_theme_defaults['foo'],
        )
    );  
}

function my_theme_mod( $name ) {
    global $my_theme_defaults;

    echo get_theme_mod( $name, $my_theme_defaults[ $name ] );
}

Actually you can output a default value. The correct way is to set a default for your mod like this:

echo get_theme_mod( 'MOD_ID', 'YOUR DEFAULT OUTPUT' );