I've recently built a fairly large and complex site using HTML::Mason and can thoroughly recommend it. Reading the book by davorgautarch and kwilliams is a must, but the learning curve isn't especially steep and the speed of development compared to, say, CGI, is an order of magnitude quicker taking bug fixing and general maintenance into account.