Alex de Angelis passed Stefan Bradl on the last lap and then survived a punt up the rear from the German to take his first Moto2 victory of the year at the Australian Grand Prix at Phillip Island.