The only way to beat the bound is to use something other than comparisons in the sort.
Some well known sorts use various properties to achieve O(n) running times: counting sort, radix sort, bucket sort.
I'll describe one that is an in-place sort that runs in time O(nb) time sorting integers with b bits.