I believe the reason Timers are working better than delays is that, Timer is a self contained tick with a delay in itself, while a regular Delay or a Retriggerable Delay needs something to call it before.
So again, the delay not working proper on regen is not really delay’s fault, but how good it is being called. In this case a Timer can be far better.
About multiplayer-related delays. On such things its the server that should take care of the delay, not clients. So what you need to worry about is, how good or bad the server’s own performance.