The advocate general to the European Court of Justice, Melchior Wathelet, said in a legal opinion that the European Union was "in breach of its obligation to respect the right of the people of Western Sahara to self-determination".
Morocco suspended ties with Brussels in 2016 after a lower EU court annulled an agriculture deal on similar grounds, although the ruling was later overturned and they are now pushing ahead with the pact.
"According to Advocate General Wathelet, the Fisheries Agreement concluded between the EU and Morocco is invalid because it applies to the Western Sahara and its adjacent waters," the court said in a statement.
The ECJ often but not always follows the legal opinions of its advocates general.
The Western Sahara is a former Spanish colony controlled by Morocco where the Polisario Front group, backed by Algeria, is fighting for independence.
The Polisario Front filed the legal appeals against both the farm and fisheries deals that led to the two cases coming before the European Court of Justice in Luxembourg.
Wathelet said the EU had also "not put in place the safeguards necessary to ensure that the exploitation of the natural resources of Western Sahara is for the benefit of the people of that territory."
Morocco and the Polisario fought for control of Western Sahara from 1974 to 1991 after Spain pulled out, with Rabat taking over the desert territory before a UN-brokered ceasefire.
Rabat considers Western Sahara an integral part of Morocco and proposes autonomy for the resource-rich territory, but the Polisario Front insists on a UN referendum on independence.
UN Secretary-General Antonio Guterres expressed concerns on Saturday over a spike in tensions in a buffer zone in Western Sahara.