override node.tpl.php in a module
It is not clear in your question if you are placing your template in sites/all/custom/modules, or in sites/all/custom/modules/the_name_of_mymodule. It needs to be the later.

However, if you:


Have your template in the proper place.
Visited the admin/appearance path to force a theme registry refresh.
Cleared all the caches aftewards.


...but still no dice, you can always specify in your hook_theme() implementation the theme_path key:

&lt;?php
function apps_theme($existing, $type, $theme, $path) {
    $items = array(
        'node_app' =&gt; array(
            // Don't specify the path in the template name.
            // Unless you have your template inside a directory within this module.
            'template' =&gt;  'node--app',
            'variables' =&gt; array('node' =&gt; (object)array()),
            // If you want to put the tpl in another location, you can use this key.
            'theme path' =&gt; drupal_get_path('module', 'another_module'),
        ),
    );
    return $items;
}