Another possibility would be to automatically generate additional data from the Penn Discourse TreeBank corpus, where causality is one of the discourse relations annotated between argument pairs.
a further processing step would be needed to identify inside the argument spans the events between which a relation holds, which may introduce some errors.