This is a subject that crops up regularly on moneysavingexpert forums. The general view seems to be that the "child" should spend their money in thirds. One third to parents for board/lodgings, one third for savings, and one third for spending.
I know that's not always feasible though, but it seems a good rule of thumb. It wouldn't work for us though.
My two sons pay £50 a week each. I worked out how much it costs us to have them here (excluding mortgage, council tax and water rates, as we'd be paying those amounts whether they lived here or not), and divided it into four, and suggested they paid a quarter. So that's gas, electricity, food (huge cost!) insurance, internet etc.
They paid up without a murmur, especially once they realised that they'd be looking at paying WAY more than that for rent alone elsewhere, let alone all the bills included.
My youngest son has just been made redundant and so we won't ask for any money from him until he is working again. Instead, he will become our housekeeper/gardener.
I don't think there is a "one size fits all" solution to this "problem", but each family has to do what is best for them.
Maybe in the case of the OP, she could stop buying food for her son - if all he wants is five ready meal to heat up at work, then surely he can pick those up himself - and definitely stop texting and asking him what he wants. I don't think he's taking the P exactly, but has got into a bit of a rut and is being a bit thoughtless. I would say to him "look, it is uncomfortable for me to have to keep on asking you for money month. Can you please just set up a standing order and have done with it".