Wordpress - Create "File-less" Page Template in Functions.php

Pages are generally speaking rather inflexible, you would be better off using a custom post type. Also hooking into the actual page template dropdown would very likely be problematic (I doubt it would work without some serious hacking around). You're better off just writing your own meta box dropdown.

I think your on the the right track with get_template_part. It's easy, flexible and really helps with structuring complex output, and using both parameters helps. It arguably easier to copy/paste chunks of code into templates then writing all sorts of whacky functions, and it makes more sense for other people or when you re-visit the code down the road.

The other alternative is someone similar but at the function level, using the template_redirect action.

You could have functions based on your meta selection that loads unique templates, actually now that I think about it you could probably combine it with get_template_part. Code below is not tested.

Something like:

function my_special_template() {
//page "contact" for example, make this your meta dropdown selection
    if (is_page('Contact')){  
        get_template_part( 'special-chunk' );  //file named special-chunk.php
    }
}

add_action('template_redirect', 'my_special_template');

At the end of the day you still grabbing some sort of .php file though.