Show block content inside custom node template
First, you have to make your block available inside your node.tpl.php, so edit template.php and add the following:

function YOURTHEME_preprocess_node($variables) {
  $YOURBLOCK = block_load('MODULENAME', 'BLOCKDELTA');
  $variables['YOURBLOCK'] = drupal_render(_block_get_renderable_array(_block_render_blocks(array($block))));
}


Then, on your node.tpl.php you can print $YOURBLOCK; anywhere you want.

And yes, you have to call two "private" functions from block module, see http://api.drupal.org/api/drupal/includes%21module.inc/function/module_invoke/7#comment-15884