One of the most important things Milah and Rumple ever said to each other was this:
Milah: Why can’t we just leave?
Rumple: We’ve talked about that.
Rumple shoots down her pleas, dismissing them. It’s something she brought up to him before, and it would have been the thing to save their marriage. If they had left that village, and Rumplestiltskin had chosen a new name so no one would have ever heard of him, they could have fixed their marriage. But he was too afraid of change that he wouldn’t leave. So far, his cowardice is the canon reason we’ve been given as to why they couldn’t leave.
Milah had faith in Rumple not to be a coward, at first. What’s sad is that his reasoning for coming home wasn’t pure cowardice, though most saw it that way. He wanted to be there for his son. Her faith in him was shattered because of his father’s actions and she saw him as no different than his father.
I think over time she could have forgiven him, except it’s hard to do that when everyone in your small village is shunning you and whispering behind your back (or to your face) like ‘how could you marry and love such a coward, snicker snicker snicker’. In medieval times women were usually seen as extensions of their husbands, especially if you’re a peasant woman. She would have bared the same shame that Rumple did. So instead of seeing his actions as dedication to fatherhood, she ended up hating him for his cowardice. If they’d done from the start what she suggested and left town, they could have salvaged their marriage. But he was too cowardly to leave his little town [and change his name], where everyone knew what he’d done, so they suffered.