You might want to try to see an "ENT" (Ears,Nose and Throat) specialist . Sinus infections, migraines, grinding your teeth at night, high anxiety, PTSD, these are all triggers and sometimes one of the above may trigger others.
Eating at night is usually a bad idea, this can cause nightmares as well. Try cuddling with a pillow, or a pet, teddy bear, etc... this might help in falling asleep. Also anti-anxiety/ anti depressants may also help. Citalopram, Ciprolex, etc, these medications may also help in your nightmares. You may also want to see if you have the 'ulcer bug' and look into seeing if you have ulcers, indigestion, acid reflux.
Medical and mental health issues can sometimes all come together in making your nightmares more chronic and cause you to lack the sleep your body needs which can lead to further health problems and behavioral problems.
You should see a registered psychologist who is trained in diagnosing anxiety, depression and PTSD. Diagnosis is vital before any therapy.
But these will not necessarily eradicate your nightmares, but you may find they help to alleviate most of your symptoms.
I hope this helps.