Integrating Acceleration for Distance
It sounds like your methodology is perfectly correct. Just subtract 9.81 from the z acceleration, and integrate. There is no reason why this all shouldn't be accurate. In fact, integrating tends to reduce the inaccuracy. Of course, don't use Forward Euler. Try to use higher order integration formulas. For example, use the acceleration at time t to integrate the velocity between t -(Δt)/2 to t + (Δt)/2. Then use the velocity at t + (Δt)/2 to integrate the distance between t and t + Δt.