i had similar experience and simply choose to rely upon the date/time field to provide the order and when using a cypher order by clause.
And so my model was effectively < N > relationships off a single node. And then to build out the order of event a simply
match (n:Node {id: <anchorNode>})-[:EVENT]->((n2:Event) return n2 order by n2.<datetimestamp property>;
This is in contrast to for example building out a long relationship path for example