What will the events be used for? If they will be used for sending information about the game state, then it should probably come from the game. If it is for sending data to the game to cause a change in game state, then it should be able to come from the game itself or other systems.
So you need to clarify what these objects are supposed to be doing, and then make the design decision based on that!
I'm saying if a Game Event is called "GAME EVENT" they're supposed to come from the GameState, or is just globals that propagate through the world, systems, etc.
If so, I don't need even have a EventListener, I can call directly each Object's Event Handler based on a certain criteria.