I cannot know from what you have provided whether this explains your problem or not.
Suppose I have a single y value that is almost exactly zero, known to 34 digits of accuracy and I want to find the x value such that y=1/x. Since near y==0 the curve is almost completely horizontal, even though I know y to 34 digits, I cannot determine x to anywhere near 34 digits of accuracy.
Mathematica attempts to keep track of accuracy internally and supposedly only returns the accuracy that it calculates is correct. Perhaps this is why it is telling you the answer to 24 digits and no more.
You might test this. Lie to Mathematica and claim you know all your data to 200 or 1000 digits of accuracy, it can't tell you are lying. Then do the fit and see if you get more than 24 digits of result. The results will be meaningless, because you don't know your data to 1000 digits, but if you get more digits of a result that might tell you that this is not some built in limitation that is restricting the accuracy of the results.