Don't even mention 2) or 3) - there's nothing much CX could have done about 2), and duty free isn't a committed part of the service so I don't see that you can expect anything if they choose not to offer it on a flight. I assume that they offered to find you something you could eat from the J or Y cabins?
On 1) you clearly have a case. I would just write a very polite letter (to the customer relations address on the CX website) explaining what happened, making the point you have made (you pay for J to get a comfortable seat and you ended up with a less comfortable one). If it were me my hope would be that I would get a confirmed availability long haul one-class upgrade voucher, or something like that (perhaps the equivalent miles).
Of course your mother (I assume) did get the full F service for the price of J so on average you still did OK!
And don't hold your breath waiting for the reply - it may take CX a while, but they will get round to it...