Am I missing something, or does this do what you want?
+3 Cards
+2 Actions
You may discard a Curse. If you didn't, gain a Curse.
This card is better than the original once Curses run out, since you will still get +2 actions even if you have no Curses to discard. But at that point, does it matter? Your deck may be full of Curses then anyway. If you find it too strong, you can nerf it by moving the vanilla bonuses to the bottom, which will force you to gain Curses more often.
In any case, I'm personally not a fan of the "strong card that curses the user on play" concept.
Well, your version is just a "strong card that curses the user on play".
The purpose of mine was letting you build a deck which uses curses as an Engine component, and which ideally is built and plays differently enough than village smithy. I just failed, it seems.
Replying to LF:
-the mandatory curse gain to have it play differently than Smithy. This is probably the easiest part to get rid of while respecting the basic idea.
-the card sucking once the Curses run out, since otherwise the whole point of "lets build a deck that uses Curses as Villages" is lost, as you don't really need the curses in there.
If I'll print this (and it's unlikely as I'm on exchange right now, without printer nor gaming group) I think I'd try "You may discard a curse or gain a curse. If you did..." It's flexible, more broad and probably lets you build some fun decks around it.
It might also be badly OP.