They have massively struggled at outhalf for almost 20 years. I'm not saying that it is as simple as that, but it is a big part of it.
Diego Dominguez was born in 1966 and Italy joined the Six Nations in 2000 – he played in that competition as a 33 year old and played his last games in it in 2003 as a 36 [almost 37] year old. Between then and Garbisi [who was born the year Italy first played in the Six Nations] they haven't had an outhalf capable of thriving at the level at which the Italians play in international competition, i.e. Six Nations and World Cups.
Listed below are the outhalves they selected in RWC squads following Dominguez's retirement:
2003 RWC: Francesco Mazzariol [28], Rima Wakarua [27]
2007 RWC: Roland de Marigny [32], Ramiro Pez [29]
2011 RWC: Ricardo Bocchino [23], Luciano Orquera [29]
2015 RWC: Tommaso Allan [22], Carlo Canna [23]
2019 RWC: Tommaso Allan [26], Carlo Canna [27]
Not a whole heap of quality test match players there.