Well, since you have custom php files you don't need to use a plugin. You can add code to render your custom template before the "main" page template. So just after the "YOUR CUSTOM CODE GOES HERE", add something like:
Code:
$templater = vB_Template::create('custom_nav');
$custom_nav = $templater->render();
Then lower down, add a "register" line to your template code:
Code:
$templater->register('custom_nav', $custom_nav);
then you should be able to put {vb:raw custom_nav} in your siterules template where you want it to appear.
One last thing, for efficiency: add custom_nav to the (existing) array of templates to cache ($globaltemplates):
Code:
$globaltemplates = array('siterules', 'custom_nav');