This sounds terrifying and the fact that you have been coping with it for a while may mean that you need to talk about this more directly with a therapist. I think your list of potential causes are good guesses, but the help of a professional will be able to specify what the core issue is and provide treatment for it.
The fact that this is causing you so much turmoil is enough to get some help with it. I’d only be guessing as to the possibilities, but a skilled therapist can narrow this down with you one-on-one.
The Find Help tab at the top of the page can get you to someone in your area.
Wishing you patience and peace,
Proof Positive Blog @ PsychCentral