Device name in network has a number in parenthesis and it is incrementing
This does not mess up iCloud devices, the device is getting the name from the router and reporting it. As soon as you rename the device or fix the network to assign a different name, iCloud will reflect the current names quickly.

It definitely is made worse by YazFi, because since I uninstalled it from my router, all my devices have kept their names. I'm going to ask its developer also. This can happen on any network, however with bonjour sleep proxy and dns/dhcp not cleaning old records at the same rate as iOS devices reconnect after sleep.
YazFi's developer had asked people to reply to a thread in SmallNetBuilders forum regarding any issues. Several others created accounts there, but looks new users need to gain a few points to be able to post on the forums (similar to how new users can’t comment here without reputation or make edits without approval).
Getting enough momentum posting on SNB forums to link to this question might help others see it.
Editors note: this answer came from edits to the question so I moved it to the answer. I encourage others to put up a better answer or edit this as needed.