Of course talk to a vet, but try different types of cat food, and wet food! Whatever you do, do NOT give your cat dog food, it can harm your cat...
It's own stools. However, dogs will only eat their own faeces if their diet is lacking in nutrients, or hasn't been taught otherwise.
Yes, but cats only eat grass in order to help them vomit and clean out their stomach. Cats are carnivores, so grass provides them with nothing nutrition-wise.
because it has some special substances only for a cat
No. Cats are not cannibal. Mother cats will eat their dead kittens.