Eat more, and don't train to failure every time. You're likely over training by working out for that long and going to failure, it's far too taxing on your muscles and cns. It's pretty easy to make yourself think that if you're not giving it 100%, you're not going to make any gains, but stopping yourself a rep or two shy of failure will probably provide some great results for you.

tl;dr=ease off a little bit, eat more.
(I'm not saying that training to failure doesn't work for some people, but for most it doesn't.)