This behaviour won't just manifest itself in a restaurant. Look at the clothes, the shoe, the handbag, is it all expensive designer stuff?
Maybe you just accept your son has married a high maintenance woman, a Ducati, not a Honda. Its his choice and maybe he knows it.
If its a financial problem, go out less often or go out whens she's away (Go on, tell us about the number of "spa breaks" she has) If its just a manners problem, same solution.
But don't go thinking a well chosen word will change her. It may change her attitude to you, but it won't change her attitude to herself.