That's why I always laugh so hard if some people with their DLLs show up with a lot of new features without fix anything.
They make some new functions and new process and then call it with "new features" without knowing the side effects.
They think if they following some source code form here it is enough to make something and then released it in here.
It was so funny if they think the new features are more important than solving a common bug, crash, and Cheat in RF Server.
They are so busy to copy, begging, and following other ppl work then creating same product with a new feature that is actually very easy to make and act like they have made something great, even they not fix anythings.
That's why they can not provide the right solution. and talking so much about nothings.
Solving your problem #1 :
You need to make sure if your zoneserver crash from logout process. Actually no packet from logout can make zoneserver crash, do not talking and making issue about that if you don't have prove.
Solving your problem #2 :