I see that no one has answered this post, so I will do so myself. This answer is anecdotal, but it did work for me today when I was suffering from the same problem. All of a sudden I showed two of my AppleTVs in my IOS Remote.app. To resolve the problem I did the following in this order. I don't know if the order or timing matters, but I would suggest at least one hour (it might force the the caches to update upon restart due to the time difference).
My network looks like this: I have a network based from an Apple TimeCapsule router which is extended by 3 Apple Airport Express routers.
Here are the steps to take:
1. Turn off/unplug Apple TV
2. Turn off computer and ALL IOS devices
3. Turn off all Airport Express Modules
4. Turn off TimeCapsule (main router).
Leave all devices off for 2 hours. (I went to go have coffee with a friend). For my iPhone, I turned off the WIFI then restarted it. I didn't turn on WIFI again until I was at the restaurant.
5. Turn on TimeCapsule (main router).
6. Check Remote.app on iPhone (should say it is not working because it can't find a HomeSharing Library)
7. Turn on AppleTV
8. Check Remote.app on iPhone (should display only 1 AppleTV and be able to control it.)
9. Turn on Mac (and launch iTunes)
10. Check Remote.app on iPhone (should display only 1 AppleTV and 1 Mac/iTunes Library and be able to control either)
11. Turn on any other iDevices -- Remote.app should function properly on all of them.
I hope this helps anyone else who is having this issue!
On a side note, Bonjour Browser STILL shows that I have 2 AppleTVs (even hours later). I don't know why this is, although it could simply be detecting both the IP4 and IP6 addresses of the AppleTV and treating them as separate devices.
-Kevin Nagel