Unfortunately Netty 3.x doesn't work like this. It does send a message asynchronously but the asynchronous part kicks in if Netty is unable to write to the network buffers immediately. In this case it queues the message and will eventually write it out using the I/O thread.
I believe your best option is to upgrade to Netty 4 which I understand has the behaviour you desire. Otherwise you could try adding an OrderedDownstreamThreadPoolExecutor to your pipeline. The write still won't be processed by the I/O thread, but it should ease the pressure on your application thread.