Это собственный ответ Мак Киллберса, оторванный от его вопроса, к которому он относится:
=== Отвечая на мой собственный вопрос ===
$ele->objectify_text();
my @childNodes = $ele->content_list();
for(my $j=0; $j < scalar(@childNodes); $j++) {
my $childNode = $childNodes[$j];
if (ref($childNode) && ($childNode->tag() eq '~text')) { #TEXTNODE
my $newElement = HTML::Element->new('p');
$newElement->push_content($childNode->attr('text'));
$childNode->replace_with($newElement)->delete();
}
}
$ele->deobjectify_text();