Problem solved. In my "View" class, like:
use strict; use warnings;
use base 'Catalyst::View::TT';
replace the last line with:
use base 'Catalyst::View::TT::ForceUTF8';
and everything works fine. I guess there was some confusion between
Template Toolkit and non-utf8 stash strings or similar.