How to remove a CPT Menu from the Root Admin only

When you register the custom post type, you can control whether the menu item appears with the show_in_menu arg. You could do something like the following ( this has not been tested ):

// create a constant to store the ID of the blog where the menu should be hidden.
define('HIDDEN_MENU_BLOG_ID', 1 );

function codex_custom_init() {
    $show_in_menus = ( HIDDEN_MENU_BLOG_ID === get_current_blog_id() ) ? false : true;

    $args = array(
      'public' => true,
      'label'  => 'Books'
      'show_in_menu' => $show_in_menus,
    );
    register_post_type( 'book', $args );
}
add_action( 'init', 'codex_custom_init' );

This is not very scalable however, you may want to couple this with an admin screen where a super-admin can choose which blogs to hide the menu from.

Hope this helps!