How to automatically load block--[blockname].tpl.php to region--[regionname].tpl.php
There is no theming function to do this, and there cannot be, because assigning block to regions is more logic than theming matter. So you should do it at module level.

When you are implementing hook_block_info(), you can specify default region, like this:

$blocks['example_empty'] = array(
  'info' =&gt; t('Example: empty block'),
  'status' =&gt; TRUE,
  'region' =&gt; 'sidebar_first',
  'visibility' =&gt; BLOCK_VISIBILITY_LISTED,
  'pages' =&gt; 'node/*',
);


You can also use hook_block_info_alter() to provide default regions for blocks not defined in your module.

See Examples for developers, block example for more details and samples.