In my example I set " tolType => 'absolute' " so, at least for checking student answers, it should not be using relative error. Am I missing something? But as you say, using relative tolerance with a very small zeroLevelTol may be a better option.
Is the preview hardwired to use zeroLevelTol, etc even though the answer checker is using absolute tolerance? One could be using a custom answer checker, so it is not clear what the previewer should do. Probably using zeroLevelTol is the best option. If it uses zeroLevelTol, then for a problem such as Christian is interested, if he chooses to use absolute tolerance, he could still set a very small zeroLevelTol so that 8.85E-13 would not be previewed as zero.