I do not completely understand what you are doing, but I get the feeling that you have greatly over-complicate this. You don’t have to create a “Page” at all to load a custom template. You can hook to template_include
and simply include a plugin file with much less effort than you are currently going through.
For example (stolen form another answer):
add_filter( 'template_include', 'portfolio_newpage_template', 99 );
function portfolio_newpage_template( $template ) {
get_header();
include('/some/file/path/file.php');
get_footer();
die;
}
Honestly, I think that is all you need to do.
However, if you need parts of the page to be editable you can register a post type such that it does not show up in the menus but is still accessible if you know the correct URL. These two arguments to register_post_type
will do it:
'show_ui' => true,
'show_in_menu' => false,
You will need to create some kind of interface for associating the posts with your users (I think) and for accessing the edit screens.