Даже не раздувая место и ничего не освобождая есть решение. Место которое занимают глифы известно - для каждой версии прошивки оно есть. +те глифы что расположены в другом месте(патчами сделанном) - их считать нераздуваемыми и неперемещаемыми. Если человек сделал уменьшил два десятка глифов до 1 байта(плюс два на размер символа), до вполне может раздуть любой глиф на этот размер. Глифы вполне можно записывать все разом. И до операции "записи" в прошивку не заморачиваться перекрытиями.
Глифы которые были не из адресов глифов писать туда где были. Глифы которые из "адресов глифов для патчей" тоже не перемещать(а лучше и не редактировать).
А адреса глифов для патчей можно и программно взять - просто прочитать все патчи из папки, адреса там есть.
А если еще делать для глифов "синонимы" - помечать глиф, что он идентичен другому глифу, то любой человек руками столько места найдет(просто уменьшив до 1 байта глифы, которые он никогда не видел и поставив их все синоним на 1), что глиф размером слона нарисовать можно будет..