Removing specific menu items?

A much simpler solution is to use remove_menu_page , remove_submenu_page and remove_menu (admin bar).

Your example of removing the sub-menu item for “add new” would be

remove_submenu_page( 'edit.php?post_type=page', 'post-new.php?post_type=page' );

To remove it from the admin menu bar you can use the example in @BandonRandon’s post.