I'm just not quite sure how to configure my own DNS server on the same Windows 7/Server where the modified hosts file is installed. I suppose setting it up on Windows Server will be easier.
Basically, what are the steps in relation to zones and linking that DNS server with Windows Server's hosts file?
If you plan to run our own DNS Server, then your first step should be to try to setup a generic DNS that is capable of accepting requests from clients, and then complete "fully recursive" resolution of lookups that clients request of it. You will want to limit access to your DNS server (with full recursion) to just your own clients for security reasons. You may want to look into totally disabling DNS caching on your server, too, for security reasons (or set an upper limit for caching to be ~10 minutes regardless of the TTL provided to you on query.)
Setting up a DNS server has security issues (DNS cache poisoning, DNSSEC validation and failing to validate chain to root signer, risks for becoming an unwitting participant in a network-based "amplification attack" like "recent" attacks against NTP and a bit more distant attacks against DNS Servers.)
Making your DNS server internal-only can help decrease these risks, but not eliminate them.
After you have a working, generic DNS Server internally completing fully recursive lookups for clients (and not asking clients to take the information you provide and move on to other DNS servers) then you can look to create "zone files" (or zones -- I have not configured DNS on Windows. I've work with BIND/named.) Each zone would contain a domain, and you could then have all lookups for hosts in a domain, or specific names in a domain resolve to the same IP address like 127.0.0.1, or something else.)
When your DNS is completing the fully recursive lookup of names to IP, you can then block DNS lookups that do not pass through your DNS Server, to bypass your DNS filtering.
It is possible someone may have built a simple DNS server or procedure for doing what i describe for MS Windows. Once you have a procedure the steps to populate your zones/zone-files is trivial.
For DNS, I am going to suggest you check for a DNS Server support forum. It is possible someone here is experienced with this for windows and willing and able to help you, it is technically beyond the scope of "OpenVPN Server Config Files" (the topic of this forum.) I do not know how strict the mods/admin of this forum are with respect to "off topic conversations."
Hopefully, the information I provided with you above on setting up a DNS Server is enough for your to find keywords sufficient to help you to use google to find support specific to DNS for Windows and setting up your own DNS to filter domain lookups you want to filter from your hosts.
If/when you do find a forum or details on how to do this for windows, would you provide a link to what you found that helped you?
Such information will help anyone else that is looking to do what you are planning to do when they complete a google search.
Once the DNS server is set up, what will I need to do in OpenVPN config?
Once you have a working DNS Server, you could push the IP address for your DNS to your clients for them to use it.
See OpenVPN docs on "dhcp-option" and DNS server IP addresses that can be pushed by server to connecting clients. (Same with WINS if you chose that route.)