Where can I find a porphyria expert?   what other type of doctor can diagnose me properly and what type of specialist should I see if I have porphyria.  

Porphyria. The doctor that usually takes care of porphyria is a hematologist. The american porphyria foundation will be able to provide you with a list of experts in your area.
Porphyria. You don't need an expert. Any competent internal medicine physician should be able to make the diagnosis with a series of urine tests.