I agree this is not intuitive, and at least would deserve an example (sorting by RT is an extremely natural thing for EEGLAB migrants ?.).
I also find define_target_events <http://martinos.org/mne/stable/generated/mne.event.define_target_events.html#mne.event.define_target_events> not the most accessible function.
Boris, one thing I do is computing RTs on the raw file event arrays (usually, as Denis said, simply by calculating the difference between each event?s latency and the next event?s latency) and then storing that in the 2nd column of the events array. This is not the intended usage, but it will usually work (because the middle column is otherwise mostly useless).
MNE functions and methods preserve the middle column, and you can easily access it with e.g. epochs.events[:,1].