CloverETL Server comes with Graph Event Listeners that can easily handle this kind of tasks. The graph event monitored by the listener is called "graph_timeout" and can be used exactly the way you need - that means when a graph execution time reaches predefined limit the listener kills the graph (Abort job)
. And even more, you might want to kill the whole source of the event - that is also possible. Since there is a lot more you might want to take a look at the related documentation article
Hope it helps.