Index: wp-includes/class-wp-theme.php
===================================================================
--- wp-includes/class-wp-theme.php	(revision 22168)
+++ wp-includes/class-wp-theme.php	(working copy)
@@ -948,6 +948,14 @@
 		if ( $this->parent() )
 			$page_templates += $this->parent()->get_page_templates();
 
+		// Allow specific templates to be removed by providing their keys (file paths relative to theme directory).
+		$templates_to_remove = apply_filters( 'page_templates_to_remove', array(), $this->get_stylesheet(), $this->get_template() );
+		if ( is_array( $templates_to_remove ) ) {
+			foreach ( $templates_to_remove as $template_to_remove ) {
+				unset( $page_templates[ $template_to_remove ] );
+			}
+		}
+
 		return $page_templates;
 	}
 
