Yes, the above sentence is grammatically correct. As explained in the source you linked, this is by omitting various instances of 'that'. The meaning of the sentence is: 'fish that eat other fish, which in turn eat other fish, eat'
To prove how grammatically correct 'fish fish fish eat eat eat' is, we start with a simple clause: fish eat.
To turn that into fish fish eat eat, we merely modify the subject (fish) to be 'fish [that fish eat]', and by omitting the 'that' we are left with fish [fish eat]. Reinserting this modified subject into the original clause, we are left with 'fish fish eat eat'
This logic can be applied again, this time modifying the modifier of the original subject of the clause - this time, clarifying that the subject of the phrase 'fish eat' aren't merely eaten by other fish: they are eaten by fish that are in turn preyed upon by other fish.
This results in the clause 'fish [(that) fish [(that) fish eat] eat] eat', which can be simplified down to 'fish fish fish eat eat eat'.
This logic can be applied indefinitely, resulting in a nearly-nonsensical phrase that has almost no applicability outside the realms of:
(a) Extremely specific biology and describing the actions of fish at the bottom of the food chain and
(b) Instances such as these