Не очень понятно, почему не будет возможности менять через админку (как и зачем это вообще украшательства сайта через админку менять, но это ладно, это больше вопрос к заказчикам). Весь контекст из такой постановки задачи не ясен, но навскидку можно заводить по 2 переменных с фонами для каждого такого места, примерно так:
--banner-mobile-320-dark: url('../images/banner-dark-mobile-320.png');
--banner-mobile-320-light: url('../images/banner-light-mobile-320.png');
При переключении темы наверняка меняется/добавляется какой-то класс на весь body, исходя из этого можно уже каскадничать.
Или если это не правится, можно вешать на блоки два data-атрибута, заполняя их из админки теми же путями к бекграундам, и JSом подменять после переключения.