Have you considered handling this via Puppet or Chef? I would think that it would be fairly easy to write a module that would check to make sure that the routes are present and apply them if they are not available. That gives you the same flexibility and centralized control that you have with a single DHCP service config file.
If the VMs are set up with static IPs, you could set that in the network interface's route config file such as '/etc/sysconfig/network-scripts/route-eth0'. That could also be easily managed by a configuration management tool.
If you wish to do this via DHCP, ensure that you have properly configured your DHCP client per the RedHat Knowledgebase article (https://access.redhat.com/knowledge/docs/en-US/Red_Hat_Enterprise_Linux/6/html/6.1_Technical_Notes/ar01s04s05.html)
To ensure that RFC3442-standard classless static routes provided by a
DHCP server are processed correctly when using NetworkManager, the
following lines should be placed into /etc/dhclient.conf or, if using
per-interface DHCP options, /etc/dhclient-<ifname>.conf:
option rfc3442-classless-static-routes code 121 = array of unsigned integer 8;
option ms-classless-static-routes code 249 = array of unsigned integer 8;
also request rfc3442-classless-static-routes;
also request ms-classless-static-routes;
These lines will ensure that RFC3442 classless static routes are
requested from the DHCP server, and that they are properly processed
by NetworkManager.