Specify a Page as the parent to the CPT Archive

In your register post type arguments, set rewrite to true and has_archive to the path you want for the archive page (without leading slash):

'rewrite' => true,
'has_archive' => 'about-us/history'

As for the redirection, rather than getting all the way to the template, you could short-circuit the loading of single posts earlier and remove the need for the single cpt template:

function wpa_parse_query( $query ){
    if( is_singular() && isset( $query->query_vars['cpt_history'] ) ){
        wp_redirect( home_url() );
    }
}
add_action( 'parse_query', 'wpa_parse_query' );