Gold is not under the Black Fairy's spell, and he knows what she's done to Belle and Gideon. He confronts her about it, and Fiona tells him she did it all for him and their family... but Gold knows she can't be trusted, and only cares about herself. He's had enough, and he's ready to make her suffer. In the process, he breaks the curse she put on everyone. From the Once Upon a Time Season 6 Finale, 'The Final Battle Part 2.'