Maybe just fireworks where item will fall? Fireworks will be displayed before item drops, just need to send packet right before you drop an item and with viewport delay you will get a good timing.
Adding an animation to Player.bmd is not hard but i'm not sure if main.exe have some sort of check for animation count. If that's the case, maybe you can replace an unused animation with a new one.
If you add an animation to a player, then playing it is easy. Just need to use an existing packet that allow you to play animations on players (the action packet 0x18). You won't need to patch anything on main