It is most likely due to irritation, allergic reaction, or virus.
This is the only way it could keep coming and going.
If allergic reaction you would have to try to identify the allergen.
If irritation then what is the irritant...periodontal disease,....etc.
If virus causing a blister that gets inflamed it would be oral herpes type, 1.
I can't see this but it could start as a cancer sore as well.
This could be part of an autoimmune
disease if there were multiple ulceration, but that is not the case.
I would suggest that the next time you have it that it get cultured for bacteria, also swabbed for HSV1.
An internal medicine doctor might be of more help in this regard.
let me know if you have further questions
Please don’t forget to accept: You may Always ask from clarification as needed, even after you Click Accept to give answer credit so I am compensated for time and expertise. Come back if needed. Bonuses and positive feedback most helpful. Answers for informational purposes only, not to replace your physician advice or visit.