In addition to outputting broken non-version specific HTML, it could be replaced with just a bit of custom of code.
The HTML doesn't validate, but that's something on my to-do list. Nevertheless, HTML::Perlinfo::Modules is not intended to make your website prettier. Its intent is to show you information about your Perl modules. I've tested the appearance of the HTML on a few browsers and have never encountered an issue.
Via the full_page option, HTML::Perlinfo::Modules does allow you to insert your own HTML, which you do in your example. You could also set CSS attributes, along with the title of the page, in the constructor. For example:
$modules = HTML::Perlinfo::Modules->new(
bg_image => 'http://i104.photobucket.com/albums/m176/
bg_repeat => 'yes-repeat'
If you wanted to offer some code to improve the module, it would be more than welcomed.