Non riesco comunque a farlo funzionare.
Ecco cosa ho fatto:
1- Ho dichiarato global $Itemid e, con un var_dump, ho controllato che fosse valorizzata correttamente. Tutto ok: anche per l'home page (dove nell'indirizzo non compare Itemid) assume il valore corretto in base all'id del punto di menù.
2- Ho settato il suo valore nella request: JRequest::set(array('Itemid'=>$Itemid));
Ciononostante, usando JRoute per valorizzare i link alle altre view del componente, non mette &Itemid nell'url generato.... con i conseguenti problemi per cui ho postato...
Non capisco dove JRoute vada a reperire il valore di Itemid e come decida di inserirlo negli url generati.
Forse conviene che apro la classe JRoute e mi metto a cercare...