I've also had to make that dreadful decision and mine was very similar. When Bailey no longer could keep food down, I made the decision to let her go.
She could still go on walks and play, but she couldn't eat. Many people say their pup gives them a sign, but Bailey never did. I have pics of her 5 days earlier running and playing in the snow. And she went on a walk that morning. We picked her up at the vets after an ultrasound and we got the news she had cancerous tumours in her stomach. The vet said that Bailey and DH were ready, but clearly I was not. We took her home and I spent every minute with her agonizing over it. Finally, the next day I decided that since there wasn't anything more I could do, that no matter how much I loved her I could not make her well, so it was time. I don't know if she was in pain, but I wasn't going to take any chances. That was way back in December 2009 and I'm shedding tears as I write this because I know how difficult it is.
If it were me, I would let him go. It's terminal, you've done all you can and he can't or doesn't want to eat. Many of us here agree that it's better a day too soon, rather than a day too late. Many people have wondered if it was too soon, while others who waited felt a lot of guilt if their pup suffered. If his quality of life is poor because he can't eat, you won't be able to change that no matter how much you love him.