Нужно взять .innerHTML у тэга, затем удалить тэг и после вставить сохраненное значение обратно в нужное место. Либо можно через регулярное выражение убрать лишний текст. Но первый вариант правильнее.
for(const child of elem.childNodes) {
frag.appendChild(child);
}
Если дочерних элементов несколько, будут проблемы - обход коллекции с одновременным удалением элементов (элемент не может присутствовать одновременно в двух местах, при добавлении во фрагмент из childNodes он будет удалён), каждый второй элемент окажется пропущен.
Есть варианты:
while (elem.childNodes.length) {
frag.appendChild(elem.childNodes[0]);
}
// или
frag.append(...elem.childNodes);