Если инклуды идут жесткие - include('../file.php'), без конструкций типа include($fileToInclude), то можно сделать парсер, который пробегает по загруженному файлу, находит инклуд, выдергивает путь к инклуду и вставляет файл.
Если второй вариант - при первом проходе заменяем все include($fileToInclude) на, допустим, echo "something".include($fileToInclude)."/something", соответственно после этого можем получить значения $fileToInclude, а дальше как вначале.
Это первое, что приходит в голову.
Не знаю, правда как быть с инклудами в циклах, если имя файла, который инклудишь при каждом проходе меняется..