Do you have more than one thing running that could do drag-drop exevents? That could interfere with the game thinking you are carrying something.
I think that delay is between 'exevent drag' actions. I have had some timing issues where I actually was trying to move items as fast as possible. The 'exevent drag/drop' functions need about 1 second between actions. Lots of code examples show different ways to implement it, from no wait between the drag/drop and then a full second after or including a variety of waiting times ("drag; wait 5; drop; wait 15" vs "drag; wait 10; drop; wait 10"). Whichever you pick to implement is simply superstition.

What is important is to complete the transaction and not have something not dropped (so the game thinks it is STILL in your hand).
I did a lot of testing and discovered that if I tried to drag something and got a denial message, I could issue a new 'exevent drop' and try to drag again. My ping times usually ran in the 50-100ms range when I did this testing. I could do drag/drop operations in as little as .85 seconds and as slow as 1.2 seconds. The average was about 1.05 seconds. That is 1 EUO timeslice above 1 second. So that 1 second rule of thumb is pretty good.
If you are having a slow time to your server, you might be able to:
1) slow down the drag/drop slightly (wait 20 = 1 second) or you can issue the statement "exevent dropc [container]" just before the "exevent drag" statement. If it turns out there is nothing in your hand, then the game doesn't even complain. It would send an extra packet or so to the server, but it increases the success rate of drag/drop significantly.
Increasing the wait time for drag/drops here while fishing is not the end of the world. After all, it takes like 6-8 seconds between casts. You can get a lot of things done in that window before casting again.
The item types that changed in game were the MIB's and the sea serpent steaks. Make sure both of those are correct.