Hi,
I have suffered from severe headaches for most of my adult life thinking they were sinus related, and was diagnosed with migraines by my US doctor about a year and a half ago right before we moved to the UK. The only thing that has prevented my migraines is Propranolol. My US doctor started me on this, and I haven't had a migraine in well over a year since I've been taking it. My UK doctor prescribes it for me here now, and I have no problem getting it. I can feel a migraine threatening in the background from time to time, but it never gets to the point where it hurts. Propranolol is a beta blocker used to treat high blood pressure, but it is also prescribed separately to specifically treat migraines.
Propranolol has to be taken every day to prevent migraines. It will not help alleviate a migraine that has already started, because it does not have any pain killing properties. I take it every day and I believe it's the reason I no longer have migraines. You can Google Propranolol for more info.
Of course, this medication works for me, but it might not work for everyone. You absolutely need to check with your doctor to see if this is a good drug for you to take. It does lower your blood pressure, so if you already suffer from low blood pressure, you might not be able to take it.
In any event, it might be something to look into.
Good luck!