If you have problems getting data from another blog, polyfixes like temporarily registering taxonomies, etc. are a real pita in the long term.
You can't really rely on that workarounds, since such workarounds mimic internal wp infrastructure that changes over time.
Best practice imho would be to register a rest api endpoint (https://developer.wordpress.org/rest-api/extending-the-rest-api/adding-custom-endpoints/) or an xmlrpc endpoint (https://codex.wordpress.org/XML-RPC_Extending). The endpoint fetches all data you need and returns it as json. So you always have a clean local context of the blog queried and don't have to struggle with missing infrastructure.
Would be something like this in the source blog:
add_action(
'rest_api_init',
function () {
register_rest_route('your-namespace', '/get-terms/(?P<taxonomy>\d+)', array(
'methods' => 'GET',
'callback' => function($data) {
$taxonomy_slug = $data['taxonomy'];
return get_terms($taxonomy_slug, array('hide_empty' => false));
},
);
}
);
And something like that in the requesting blog:
$api_request = 'http://the.domain.of.your.blog/wp-json/your-namespace/get-terms/slug-of-taxonomy';
$api_response = wp_remote_get($api_request);
$taxonomy_terms = json_decode(wp_remote_retrieve_body($api_response), true);
Hope, that helps and best regards from Salzburg!