I have not been able to reproduce this with mSLDev so far. I also performed more intensive tests with your timer loop and an external SendMessage() using /reload -rs filename and was not able to reproduce the issue.

Is it possible that the file is not being reloaded at all sometimes? eg. if the file is locked by anti-virus software that is scanning it?