As I mentioned before, your eval for $pointspages must be before the eval for your template. In fact, the function print_output() ends the script and never returns, so anything you put after that will not be executed (which is probably why the error goes away).
I'm trying to do this without trying it myself, so I'm not sure what the issue is. Maybe try this code:
PHP Code:
require_once(DIR . '/includes/functions_misc.php');
eval('$pointspages = replace_template_variables("' . $vbulletin->options[points_pages] . '");');
eval('$navbar = "' . fetch_template('navbar') . '";');
eval('print_output("' . fetch_template('points_page') . '");');
What is the text in your pointpages option? Is the text you posted above what you're using now? I'm asking because if it contains any quote characters that could cause problems.