Why can't you use 3rd party libraries? Have you discussed this with whomever proscribed the use of 'non-Microsoft' libraries, assuming that's the restriction. Having such a blanket restriction is daft.
You can't get any other timestamping simply, but you could try a few hacks. The obvious one is to take the millisecond precision part (which is not recorded in the log) and use that as the EventID
- it's application-specific, so you can use it how you like. If you have only a few events per second, then sorting on the eventlog date/time should be ok, you can visually establish the order of the events.
If it's too many, then you can export the event log into Excel or something and sort by both columns.
Obviously, you can filter on the source as well, to reduce the chaff.
You may want to look at Windows high speed logging: ETW in C#/.NET using System.Diagnostics.Tracing.EventSource as well, it may help, but not if you're only going to log to the EventLog.
Essentially, if your requirement is millisecond precision, then you shouldn't use the Windows eventlog, because it doesn't offer that. As has been pointed out, there are many, many logging solutions that offer what you need.