I have been in the same boat.....you find yourself robbing peter to pay paul....NOT GOOD!!!! I know its awkward but you really need to tell him! Dont cook him meals, or find yourself in the shops buying extra for him, at the end of the day, you could be providing MORE for your child/children with that extra bit you are forking out on him, and the kids come 1st as im sure you will agree....
Tell him you cant afford to go out as much, and that you cant keep providng a free ride for him as you are struggling....he probably doesnt realise, as didnt my fella, and the reason for this was my stupid pride, didnt want him to know how skint I was, in the end I ended up resenting him and it all come out in not a very nice way....but he got the jist though...we dont go out as much, and he pays his way now around the house....good luck, and drop the pride and be honest with him x