Dependendo do contexto, ambas estão corretas. O que deves levar em consideração é a mensagem que desejas transmitir.
'Estou quente' = my body is hot -> aplica-se no caso de tu estares febril/com febre, pois transmite a ideia de que a tua temperatura corporal (interna ou externa) está quente.
Já 'estou com calor' = It's hot here -> transmite outra mensagem, a de que você está sentindo que o ambiente é que está com a temperatura elevada.
Both are correct, actually. It depends on the context of your message.
In one hand 'Estou quente' transmits the idea that you have a fever, that is, your body temperature (intern or extern) is hot.
On the other hand 'estou com calor' transmits another menssage, that u are feeling the environment is with a high temperature.
Eu estou com calor .
Estou quente , significa que você esta com febre.