Is 昨天我有过敏反应了， 所以，现在我不吃西瓜了 grammatical?
昨天我有过敏反应了， 所以，现在我不吃西瓜了。


Your sentence is grammatical. However, you haven't explicitly said to what you have your allergy. It's not something with grammar though. To be clear and concise, you could say:
我昨天吃西瓜过敏了，现在不能再吃了。

The reason why 了 is not needed at the end of 昨天我吃完西瓜有过敏反应 is that 有 already denotes the existence of 过敏反应, so 了 is unnecessary. But if you add 了， 昨天我吃完西瓜有过敏反应了 sounds emotional, implying that the allergy surprised you, it's really a big deal, the ellergy is what you were expecting, and etc.