add_external_rule – rules deleted when visiting permalinks page

Leave your activation function as it is, and create another for the rewrite rules hook:

function wpse_209303_rewrite_rules( $wp_rewrite ) {
    $wp_rewrite->add_external_rule( '(.+)\.([0-9\.\-\_]+)\.(js|css)$' , '$1.$3');
}

add_action( 'generate_rewrite_rules', 'wpse_209303_rewrite_rules' );