Can you cancel a card declared before in the same chain of effects with Great Ship?
Yes, that is exactly what «cancel» means in MECCG. Unless you are talking about attacks. Attacks use the word «target» and «cancel» but they have different meaning in that context. Unfortunate really.
Lots of misunderstandings have been said over the years, and ICE changed how it works over the years, but the bottom line now is that a «cancellation» effect can cancel a declared effect and prevent it from resolving and can also «cancel» a resolved permanent event in play (it no longer has an effect on the game and so it is discarded because of that).
On the other hand a «discard» effect is the action of moving a card from the «play area» to the discard pile. Cards declared in a chain of effects but not yet resolved are not «in play» and so are not affected by «discard» effects.
These examples were discussed much back in the day by ICE and also discussed by the CoE
Praise to Elbereth can cancel (and discard) declared events in a chain of effects and resolved events in play. Normally it would still be possible to tap and discard a Nazgul in response to Elbereth’s cancellation effect but there is a clarification changing the game: «Nazgûl permanent-events that are targeted by Praise to Elbereth may not be tapped in response to its play.» I think this effect is the only non-active condition to resolve immediately without using a chain of effects besides exhausting a play deck. I don’t see why this change was needed but there it is.
Wizard’s River-horses cannot cancel a declared Nazgul short-event (permanent event that has been tapped and discarded to use) since its a «discard» effect and not a cancel effect.
In the Name of Mordor cancels and discards.
So yeah, Great Ship can cancel an event that is declared in the chain of effects (it cannot resolve and is discarded) and it can cancel an event in play (it not longer has an effect on the game and is discarded).