ffmpeg и фильтр
vstack — подходит, когда у входных источников одинаковая ширина и одинаковый пиксельный формат.
Простой рабочий вариант:
ffmpeg \
-i 1.gif \
-i 2.gif \
-filter_complex vstack \
result.gif
Далее можно попытаться уменьшить размер результирующего gif'а, генерить оптимальную палитру — всё описано сто раз, гуглится и выходит за рамки вопроса.