i would recommend from personal experience having an amethyst crystal on you or near where you sleep i.e under the pillow. Another useful tip i have picked up is having a mojo bag created for sleep near you or a breathable bag and fill it with lavender. All these have helped me in the past for having deep, relaxing, nightmare free sleep.
I've often had horrible nightmares during highly stressful times in my life. I even had disturbing sleepwalking incidents while experiencing the illness and death of a loved one. When I regained a more peaceful state of mind, the nightmares and sleepwalking stopped happening.
If you are experiencing alot of anxiety in your life, this may be causing you to have nightmares. If this is the case, and you feel like you cannot cope on your own, which is what I think caused my own bad sleep experiences, you could try talking over your problems with someone you can rely on for emotional support. I found this to be very helpful.