20 days clean is really amazing, and the dreams might be a weapon from the y"h to put your mood down, but be aware that "DREAMS DONT COUNT"
i found what helped me, an interesting idea, through the day whenever i saw a trigger, while avoiding it, at the same time i brought to my mind disfavourable statemen slogans. for example: "this is so disgusting" "i hate the whole idea of that" "she is disgusting" "lust is disgusting"etc... then bingo, in the middle of the night when i had a dream i actually woke up, because my mind was trained to revoke it.
another thing i found helpd termendously, i learn ONE mishneh every night, and i study it immidietly 10-15 times until i can say it by heart, and in bed i fall asleep with that