The #1 thing I think that anyone in this situation, or any self-improvement challenging situation, should do is to understand themselves fully - what makes you tick, what do you like, dislike, etc.? Beware: this is not a 5-minute task; we could be talking years here. Once you feel like you have a handle on it, or along the way, try out different approaches. (As much as I love the word 'hack', I really shouldn't call them that because you could very well be using it indefinitely.)
For me personally, one thing that I've never truly tried is a commitment contract. I've long known about services like Beeminder and StickK, but I never actually fully tried one (where you commit with real money). That changed recently when I discovered a framework for classifying people called The Four Tendencies by Gretchen Rubin.
Folks like us mostly fall into the category of "Obligers", people who meet outer expectations, but struggle to meet expectations they impose on themselves. And one way to beat that is to create parameters (like a commitment contract) that force you into action.
I recently (~6 weeks ago) created a goal on Beeminder and after falling off the wagon tout-de-suite and having to pay up ($5 initially), I haven't derailed since (my current penalty is $10). I know, not an earth-shattering amount of money, for some reason it's keeping me honest.
It's probably too early to tell if this is going to work long-term, but even this feels longer than I've stuck with other methods. I encourage you to check out Rubin's blog posts, interviews [1, 2] and/or podcasts. There's even a book and a quiz, but I learned enough from a single interview to get started.
There's a great discussion of Gretchen Rubin's Four Tendencies in the Beeminder forum: http://forum.beeminder.com/t/which-habit-tendency-are-you/16...
(Apparently I too am an Obliger.)