Use Privatemsg admin form in theme (Missing functions!)
Though I suspect that this is an improper workaround, the solution was to hook a custom module's hook_init() function, watch for a system/ajax path and include the file if needed:

function MYMODULE_init(){
    if($_GET['q'] == 'system/ajax'){        
        if ( preg_match('/privatemsg_list/', $_POST['form_id'])) {
            include('/great/big/system/path/web/sites/all/modules/privatemsg/privatemsg.pages.inc');
        }
    }
} 


UPDATE: Answer is available at https://drupal.org/node/1961776! In short: use form_load_include() instead of module_load_include().