How can you wrap add_filter with a if is_home() statement?

The is_home() function isn’t available until the parse_query action. So you’d probably want to rewrite your code like so:

if ( ! function_exists( 'df_excerpt_more' ) ) {

    function df_excerpt_more( $more ) {
        return ' &hellip; <a class="more-link" href="' . esc_url( get_permalink( get_the_ID() ) ) . '">' . esc_attr__( 'Read More', 'applique' ) . '<i class="ion-ios-arrow-thin-right"></i></a>';
    }

}

add_action( 'parse_query', 'df_add_excerpt_filters' );

function df_add_excerpt_filters() {

    add_filter( 'excerpt_more', 'df_excerpt_more' );

    if ( is_home() ) :
        add_filter( 'get_the_excerpt', 'df_excerpt_more' );
    endif;

}