Navigation menus not showing because of custom post type filter

This:

if (is_tag()){

will be true for any query on a tag archive page, including the query WordPress makes to load menu items.

You want to check if the current query is both the main query and tag query:

if ($query->is_main_query() && $query->is_tag()){