The only way to know what this is is to go see a doctor.
We are not doctors here, so we cannot diagnose anything or tell you what this is. Even if we were doctors it would be irresponsible for us to tell you a diagnosis or to guess what this is over the internet.
You will need to tell a doctor all of your symptoms and let them run the appropriate tests. Let us know what the doctor says.