The Ducks were behind 3-1 after two periods but erupted for four consecutive goals.
Kyle Palmieri scored go-ahead goal with 6:16 remaining.
Mathieu Perreault added a goal and Frederik Andersen made 18 saves for Anaheim.
Thomas Vanek netted two goals and Frans Nielson scored for the Islanders, who fell for the 14th time in 16 games.
Evegeni Nabokov stopped 26-of-30 shots.