Can i exclude certain page templates for a specific role?

If you need to change the template used, you can use the template_include filter (change “itermediate-template.php” and “page.php” with correct file names of your template files):

add_filter( 'template_include', 'cyb_exclude_template_for_editors', 99 );
function cyb_exclude_template_for_editors( $template ) {

    $user = wp_get_current_user();
    if( in_array( "editor", (array) $user->roles ) && is_page_template( "itermediate-template.php" ) ) {
        $new_template = locate_template( array( 'page.php' ) );
        if ( '' != $new_template ) {
            return $new_template ;
        }
    }

    return $template;
}

If you need to redirect the user to another page you can use template_redirect filter:

add_action( 'template_redirect', 'cyb_redirect_editors_from_page_template' );
function cyb_redirect_editors_from_page_template() {

    $user = wp_get_current_user();
    if( in_array( "editor", (array) $user->roles ) && is_page_template( "itermediate-template.php" ) ) {
        //Redirect to home, change to fit your needs
        wp_redirect( home_url() );
        exit();
    }

}