Flavio Cobolli saved seven match points to beat Belgium's Zizou Bergs in a thriller and seal a 2-0 semi-final victory.