Because a keyword "gaming" wouldn't catch reddit.com/r/gaming in DNS. The domain name system (DNS) doesn't know anything about URLs, "sites" or any other objects except domain names. So a DNS service like OpenDNS just sees the domain name reddit.com with the DNS query, because you don't send any other or more information to them.
So, it's not a technical limitation, but simply how DNS works. Here is a simplified flow:
Your browser raises a DNS query for www.reddit.com to obtain its IP address(es). Else it cannot connect.
OpenDNS responds with the IP address information for www.reddit.com