How long are the inter-event-block times? If there is enough “pause” in between events, just use one pixel width even for shorter events; communicating the existence of an event at a certain point is more important than correctly communicating its relative duration.

I do have a problem with single-pixel lines of different colors near each-other. They may perceptually overlap, resulting in another perceived color altogether, or in an uncomfortable focusing of the eyes. The red-blue combination in your top-right example is representative of this; my eyes are already burning while focusing on it.

Finally, re-consider what are the real, hard, requirements for this timeline. Is existence or relative duration more important to show? Why is it important to show the categories? Is the exact information important, or the “trend” information? If the trend is more important, then a heat-map visualization of your timeline could be more useful. You may be able to combine it with a lens on mouse-over to show the fine-grained detail in a visualization similar to what you have above.