require happens out of order

Must be something with your setup. Following works for me (inside child theme – should work for any theme though):

single.php:

global $post;
$bla = $post->post_title;
error_log('post title is: ' . $bla);
include('included.php');

included.php:

error_log('i am included file: ' . $bla);

Output in debug.log:

post title is:  Hello test
i am included file: Hello test

Both files are inside the same directory.