The problem is that the application of the rules is inherently usage-specific.
For example, with the 1% duty cycle limit it is totally fine to have a transmission take 30 seconds - provided you only send 1 transmission an hour. Want to send one transmission per minute? You'll have to get your transmission time down to 0.6 seconds. And your transmission speed is inherently linked to your data rate, and by extension your signal range.
There's no one-size-fits-all solution possible here. Either the user has to give it some information about their specific use case, or it'll have to stick to the absolute most pessimistic limits.