well , you have 100k on open files , that should be more than enough.
ulimit -n is showing the user's limit , not the process' limit, that's why you see it different
but I think either 100k or 327k , it should be more than enough for single process to use.
if you still see that issue ...