Если https-запрос уже пришел на сервер, то сервер должен иметь валидный сертификат, иначе в браузере будет выведено предупреждение о невалидном сертификате.
Вариант 1: забить на невалидность сертификата, все равно отдавать 403.
Вариант 2: получить wildcard-сертификат *.site2.ru
Вариант 3: в NS-записях домена явно прописать все поддомены. На несуществующий поддомен браузер даже не будет отправлять запрос.
А почему вы решили, что дело в nginx? Возможно, он то как раз пропускает большие файлы, а кто-то другой (Apache, PHP, Python и пр. - в зависимости от того, что и как у вас настроено) блокирует.
Читайте /var/log/nginx/*
Не увидел самого вопроса.
Как создать самоподписанный сертификат на IP без домена? Да любой сертификат берите и используйте. Все равно браузер будет ругаться.
Как сертификат добавить в Nginx к server? Тысячи мануалов уже написаны.