Have you double-checked the ulimit was applied correctly? Including making sure it's applied to the user account running Tor? Here's how I do that on Ubuntu/Debian, assuming the user account is "debian-tor":
sudo su debian-tor --shell /bin/bash --command "ulimit -Sn" sudo su debian-tor --shell /bin/bash --command "ulimit -Hn"
Those should return the actual hard and soft limits being applied to the debian-tor user. In my case it returns 64000, but you'll just want to make sure it's what you're expecting.
nothing works and now I am running out of ideas
It would be easier for people to help if you elaborate a bit -- perhaps the exact commands you've already tried and the log messages (if there are any other error or warning messages besides the one you already listed).