Bathroom ventilation stops too early

What you almost certainly need is a way to make only one timer at a time.

That makes dealing with multiple triggers easy - you look to see if the timer already exists before creating a new one. If it does, you can choose to let it run or optional reschedule it to extend it.

The secret is to put a “handle” to your timer into a global variable so that your rule can test what it’s up to.
There are numerous examples of this kind of thing - a popular starting point.here
" Simple Example: Timers Version "