there are two ways that method would be called for that event:
variant 1 - manual: you called addListener. see ExampleMod.java for example.
variant 2 - automagic: if a class is annotated with @Mod.EventBusSubscriber and the event is made static and annotated with @SubscribeEvent, forge will handle everything.
use variant 2, but not in main class.
You need to make your mod load after forge to modify the vanilla datapack. By specifying an ordering in your mods.toml
https://forge.gemwire.uk/wiki/Mods.toml
But doing that is a bad idea. You will conflict with other mods or modpack configuration doing the same thing.
You should use global loot modifiers instead.
https://forge.gemwire.uk/wiki/Dynamic_Loot_Modification