As a long term Linux Sysadmin my first piece of advice is to use the OS you are most comfortable with. I am a RHEL person myself so I would use RHEL or CentOS for production. But if you are a Ubuntu shop, use that.
As to Fedora 19, there are pluses and minuses. With Fedora 19 you get a lot of the latest and greatest packages. This might be important for python or ruby. But on the minus side, you get the latest and greatest which means that 3rd party repos break. For example I tried to install CouchDB on Fedora 19. No go because Fedora 19 uses libssl.so.10 and CouchDB wants libssl.so.6. I have run into similar dependency problems with other packages.
As to data compatibility this has two areas: OpenStack data and instance images. Instance images should upgrade with minimal problems. There may be some KVM subtleties that may crop up. But I suspect these will be minimal. OpenStack data may be a different kettle of fish. Problems will probably have more to do with OpenStack updates rather than OS updates. But there may be issues with device names and in particular network interface names.
Now why are you looking at Fedora 19? Just because it is newer than RHEL 6.2? That would not motivate me. Are there things in Fedora 19 you want. That is compelling. Why I am running Fedora 19 on my desktop/laptop is that I want to start seeing what RHEL 7 will be like. A lot of things will be different in RHEL 7. I am trying to get a head start. But I don't think Fedora 19 and possibly 20 will be RHEL 7. I gather a number of important changes were put into Fedora 18 and 19, OpenStack being one of them, and Red Hat wants them to simmer for a while.
Personally, I am running CentOS on my small OpenStack cluster, cloud5. I am using the Grizzly RDO rpms from Red Hat. And I am happy with this. It seems to be stable and well supported. Something important to us Ops guys and gals.