If the critical issue is "content-change", it might be simpler to strip all the html and compare the two resultant text files. Then, if I understand your intent, if the text (content) varies, HTML::Diff might make it easy to finish the job? Alts in the HTML-Parser family, including
http://search.cpan.org/dist/HTML-Parser/lib/HTML/TokeParser.pm