ad.1 - tak
(Avere jako czasownik posiłkowy jest używany przy pewnych czasownikach wyrażających ruch, przy których nie jest podany punkt wyjścia ani cel - camminare, nuotare, passegiare)
ad.2. - Czasowniki modalne wymagają użycia posiłkowego "essere", jeśli łączą się z czasownikiem wymagającym "essere"
czyli - Sono potuto venire
ale - Ho dovuto scrivere...