High order IIR is very sensitive, in that small errors can cause numerical instability and the whole thing explodes. (For this reason, IIR filters are usually designed the same way op-amp filters are: a chain of double-pole filters, the poles being arranged to match a given synthesis type. The maximum filter order, per stage, is 2, so the numerical accuracy isn't ridiculous.)
But FIR filters have no stability concerns, so they need few bits beyond the operand size, just enough to avoid excessive rounding (which should probably be on the order of Lg(N) extra bits, for N taps).
As mentioned above, you can calculate the error, and probably twiddle a few bits here and there to get an optimal filter response.
You can also investigate other architectures, like using a decimating filter into a smaller (lower sample rate) filter, or the chain of IIR stages I mentioned before (given that you may need more bits per stage, but much fewer taps, to realize an equivalent response).
Tim