Я столкнулся с той же проблемой.
Слияние модулей не было хорошим решением в моем случае.
То, что я даже сделал, было добавить функцию обратного вызова вместо первоначальной. И зарегистрировать функцию в другом модуле, используя процедуры регистрации (для этого нужно использовать указатель функции).
Это устранило зависимость между модулями.
Затем можно сначала вставить независимый модуль, а затем зависимый модуль.