How do I theme my module output (specifically the nodes coming out of EntityFieldQuery)? I'm using EntityFieldQuery to get node IDs that match certain criteria in my module. At the end, I am doing: return node_view_multiple($nodes, 'full'); in the page callback function (which itself is called from hook_menu).

If I use node--content-type.tpl.php, I override the display everywhere. Ideally, I would like an array containing Node information that is sent to the tpl file, (like a controller returning display array to a view in CodeIgniter), which I can loop through and create a custom display.

How do I go about this?
Instead of doing a full node view you can make a custom node view like

return node_view_multiple($nodes, 'module_name');


That will enable you to create custom logic for this view type and setup field display as well if needed.

To define your own view mode you need to add it using hook_entity_info_alter

/**
 * Implements hook_entity_info_alter().
 */
function hook_entity_info_alter(&amp;$entity_info) {
  $entity_info['node']['view modes']['module'] = array(
    'label' =&gt; t('Name'),
    'custom settings' =&gt; TRUE,
  );
}