OK! I tried your test.
The .srt file auto opened but was missing the first command, so the first line of the sub was missing. I believe this has been mentioned by others but is seldom that a video opens with a sub so is probably not a real problem. The timing looked good and seemed to play normally. But as I mentioned earlier it is missing the FPS specification and I would think it would try to default to the frame rate of the video, assuming of coarse the the sub timing matches the video (was made for the video).
MPC did NOT recognize the .srt file unless it was loaded manually and using vmr7 or 9 renderless. When I changed the name of the file it did autoload and also worked with VSFilter.dll. The first line of the sub was shown but was late. The rest seemed to appear on time.
The .sub file when first tested seemed to have two subtitle tracks the first one showed subs early. The second showed them on time. After looking at the file and seeing there was no second track I moved the other (.srt) sub file out of the directory and rebooted the machine. When I re-ran the test, VLC autoloaded the sub file and showed one subtitle track and again did not show the first line of the sub. The subs overall were early. Placing the subtitles delay about +350 using ctrl h and j seemed to correct the problem. Setting Preferences, Input/ Codecs, Demuxers, Subtitles "Subtitles delay" to "3" also seemed to resolve the problem. Setting the FPS to 23.97625 in Preferences, Input/ Codecs, Demuxers, Subtitles also seemed to resolve the issue. Setting the FPS to 23 or any other number in Open file Subtitles, advanced seemed to make the subs slightly late. Considering this type of file uses an .idx file for control suggests that all of the problems stem from this and the lack of a internal FPS specification. Over time I would expect that it will slip in time,because everything other than the real frame rate is an approximation. Setting the Preferences to 23.97625 did yield the best sync for playing normally.
Both MPC and VSFilter recognized the Subtitle file and again the first sub was late, but the rest played normally in sync.
Perhaps the best solution here would be to throw away all of the subtitles specifications and use the video frame rate for the sub because at the end of this discussion, this is what it needs to be. But I'm not sure the developers of VLC will agree to this as they tend to try following the specifications and FPS is a part of the specification.
There is of coarse another possibility, that all of the support for Subtitle formats were not written by one person and there interpretation of the specifications for any given format is showing up as inconsistencies in VLC. I'm sure at this point you are going to ask if this is a bug?? I would probably have to say, NO! Still I do believe, for user convenience, it should be changed.
Perhaps one of the developers will comment here.
I might offer a compromise here. If the FPS is missing, use the frame rate of the video and show a pop up saying "The FPS specification is missing from the subtitles file do you wish to continue?" If you say yes VLC will use the frame rate of the video. If you say no the sub will not be displayed. When the FPS is different than the frame rate of the video a warning pop up should say "This Subtitle was not made for the video, do you wish to continue?" If yes "Please enter the exact frame rate!" If No the sub will not be displayed. If the FPS of the subtitle matches the frame rate of the video no pop up is necessary. This satisfies the specification and the problem. I'm sure some users will complain about the pop up and want a switch in preferences to shut it off.
But this would do away with most if not all the other methods of manually entering FPS or frame rate within VLC.