Недавно столкнулся с точно такой же проблемой. В основном программирую на чистом JS, потому как применение фреймворков бывает неуместно, либо запрещено заказчиком.
Сначала написал точно такую же функцию как в Вашем решении, но представил ситуацию когда необходимо подключить подряд более чем 2-3 файла - получается весьма немаленькая "лесенка" из вложенных коллбэков, поэтому от этого способа я отказался и прибегнул к синхронному AJAX запросу.
В таком случае в ответе приходит само тело файла:
<script type="text/javascript">{your script here}</script>
В список скриптов такая декларация не попадает, а в теле HTML нельзя ставить точки останова, поэтому отлаживать на продакшне может оказаться весьма проблематично (если конечно нету нормальных обработчиков ошибок). В любом случае код проверяется юнитестами в специально разработанной для этого среде, поэтому данное неудобство особой роли не играет. Зато серьезно испортит жизнь тем кто захочет сломать Ваше приложение (особенно если пропустить код через обфускатор).
А вообще если приложение требует повышенной безопасности, то лучше все операции с алгоритмами выполнения, которые нужно скрыть от лишних глаз, предоставить серверу, а результаты запрашивать через SOAP или XML-RPC.