"Eat your heart out" is an English idiom that is usually spoken by someone as a way of asserting some sort of superiority over the person to whom he or she is speaking. There is usually some implication that the person who is being addressed in this manner should be jealous of the speaker for some reason. In some cases, the phrase is used to compare the speaker to someone who is extremely skilled or noted for the action that the speaker is referencing. The meaning of the phrase emanates from the fact that someone eating out his heart is considered to be consumed by frustration.
In the English language, idioms are used as a way for speakers to add some color and expressiveness to conversation with others who are familiar with the meanings of the phrases. These meanings can often wildly diverge from the literal meanings of the words they contain. Instead, meanings of idioms evolve through popular usage within a culture.
When someone uses this phrase, it is meant as a derisive insult to the person that is being addressed. The speaker who uses this phrase may also be boasting of his or her success in addition to putting down someone else. For example, someone might say, "My burgers are better than the ones that you made, so you can eat your heart out." In many ways, the first part of that sentence says literally what the second half implies.
This phrase can also be used in reference to someone who is actually not in the same room as the speaker. It is often used as a way to compare the speaker to a famous person by exaggerating the speaker's accomplishments. As an example, consider the sentence, "I sang that song so beautifully; Mariah Carey, eat your heart out." The person who is speaking is comparing her singing ability to that of a famous singer, even if she might be nowhere near as good.
Obviously, this is an idiom that strays far from the literal meaning of its words. Telling someone to literally eat their heart out would be a rather morbid direction to give. The meaning of the phrase is derived from the fact that someone eating their heart out, in a figurative sense, is suffering. For this reason, a person using the phrase wants someone else to know that he or she has been outdone.