Since Rumple originally used Snow and Charming’s hair to bottle true love, it’s possible that using charming’s heart was key to bringing magic back to storybrooke. Technically, since they share a heart, Snow wasn’t just crushing Charming’s heart. It was also her heart… in a weird metaphorical way.
Their true love brought magic to storybrooke once, so it’s possible their hearts (used as ingredients to the curse) did it the second time.