Не важно где подключается скрипт, в head или в body. Тут важно понять как работают обработчики событий в js в принципе. И то что нельзя повесить обработчик на событие элемента которого нет. Есть только обходные пути, когда обработчик вешается на родительский элемент, а уже в обработчике проверяется на каком именно дочернем элементе было событие и если на нужном, то выполняем действие. В jQuery для этого есть .delegate(), в УС - [URL=https://dev.1c-bitrix.ru/api_help/js_lib/kernel/events/bx_binddelegate.php]https://dev.1c-bitrix.ru/api_help/js_lib/kernel/events/bx_binddelegate.php[/URL]
Но всё это лирика и проблему по большому счёту не решит.
У вас есть 2 варианта:
1. Писать в тех. поддержку битрикса в надежде на помощь.
2. Сделать для этого модального окна "скелет", который всегда есть на странице и в нём есть эта кнопка.