-는데 and 아/어서 both give a reason or background for some situation, but their usage is quite different.
* -아/어서 - indicates one thing is the obvious and immediate reason for the other (positive logic), like "because". The connection is very tight, so it can't be used in imperative sentences.
- 비가 와서 못 갔어 / 비가 와서 못 가겠어 / 비가 와서 못 갈 거야. GOOD
- 비가 와서 우산 가지고 가세요 (BAD - imperative sentence) => 비가 오니까 [or 오는데] 우산 가지고 가세요.
* -는데 - indicates a background reason with an element of conflict (mildly negative logic), like "when", "but", "yet", etc. It occupies the middle ground between the tight cause-and-effect logic of -아/어서 (because) and the squarely contradictory -지만(but).
- 비가 오는데 왜 우산 안 가지고 가세요? (The rain and the person leaving without an umbrella creates a conflict)
- 시간이 없는데 택시가 안 보인다. "I'm pressed for time, and I can't find a taxi to boot".
In some imprative sentences, -는데 might appear to create a simple cause-and-effect relation:
- 비 오는데 우산 가지고 가세요 = It's raining, so take an umbrella with you.
But this is an example of a further evolved form of -는데, with an implication of an elided phrase. It is like 비 오는데 (그냥 가지 말고) 우산 가지고 가세요, with -는데 opposing the rain and the imagined action of leaving without an umbrella (그냥 가지 말고). It certainly feels more nuanced than simple sentences like 비 오니까 우산 가지고 가세요.
In short, -는데 almost never represents smooth positive logic.
So, in your examples,
- 시간 있어서 도와줬어 = GOOD.
- 시간 있는데 도와줬어 = poor construction unlikely to be said (except in a very subtle way as explained above).
시간 없는데(도) 도와 줬어 (meaning 시간이 없는데도 일부러 시간을 들여 도와 줬어) would be how we normally say it ('도' adds to the contradiction, like "even").
(But in reality, many such phrases tend to expand in meaning and usage, so 시간 있는데 도와줬어 is probably heard too.)