I don't think "I am having" is a very good translation. A sentence like this is most likely to be used in a context like a restaurant where it would translate as "I will have" or "I'll take" in English.
In the context of placing an order with a server, you are right. However, the given translation is also completely correct and avoids confusion with the future tense indicated by "I will have" or "I will take".
"Prendre" is used as "to have" in the context of food in the sense of consuming it. This is normal and need not be changed up for "eat" to make the meaning correct and natural.