That is a tonsillolith. In simple words, a long time back some food particles got stuck in that tonsil crypt. Over time, it rotted, giving rise to bad breath.
Calcium from your saliva gradually deposited over this debris gradually forming a tonsil stone similar to the formation of a pearl inside an oyster.
Gargle with some betadine gargles with 1:1 dilution with Hydrogen Peroxide. The oxygen bubbles released will gently dislodge the tonsil stone. However, if that is not helpful or if this situation recurs, best plan is LASER ASSISTED TONSILLAR ABLATION. This is a procedure where a LASER beam is used to vaporize about 3mm thickness of the tonsil surface. The heat of the LASER coagulates the protein of the tonsil remnant rendering it inert and also killing the surface bacteria that were causing the bad breath.
The healing process takes between 5-7 days, after which your throat will be good as new.