I've not used Perl as my primary language in over a decade, but it remains my favorite.
I never used CGI.pm for generating HTML...the idea of using functions for tags seemed unneccusarily dense when HTML is a string and Perl is well suited to handling strings. Later I shifted to templating modules like HTML::Template and Template::Toolkit. I assume those are long defunct, but vfb the point is that they offered better functionality than CGI.pm
I have not used it but I have heard it is as lightweight as you want (in the sense that it may be huge but you only need to use the basics if that is all you need).
But it has been quite a while since I last used Perl for cgi.
And what’s the replacement for collecting params?
I’ve used CGI.pm for both of those things.