I recommend the following to stop the bad dreams:
1- Do do Wudhu right before you sleep
2- Sleep on your right side when you are falling asleep
3- Recite Tasbeehatel Zahra before falling asleep
4- Avoid eating at least 2-3 hours before sleeping
5- Read this Dua before sleeping:
آمَنْتُ بِاللَّهِ وَ كَفَرْتُ بِالطَّاغُوتِ، اللَّهُمَّ احْفَظْنِي فِي مَنَامِي وَ فِي يَقَظَتِي
6- And this Dua as well:
أعوذ بما عاذت به ملائكةُ الله المقربون وأنبياءُ الله المرسلون وعبادُ الله الصالحون من شر رؤياي التي رأيت أن تضرني في ديني ودنياي
Then blow to your left side 3 times