Я не уверен, возможно ли это со всеми условиями, которые вы добавили. Загрузка является чисто серверным процессом. Вы можете использовать javascript для опроса прогресса, используя ajax, но для этого все еще требуется файл кода на стороне сервера.
Загрузчик файлов, который я всегда использую: http://slfileupload.codeplex.com/
Это позволяет вам делать несколько файлов, иметь индикаторы выполнения и подключаться к событиям с помощью JavaScript. Это серебряный свет, так что это может исключить вас.
Единственное, о чем я могу подумать, с наложенными вами ограничениями, это показать «рабочий» gif, например, спиннер или что-то в этом роде. Это не настоящий прогресс, но он покажет пользователю, что что-то происходит.