This solution should work for all firewalls, on root or no root. Initially I tried both kinds of devices and neither worked and after I found this info both worked. So I'm fairly sure this will work for you. To make it into a complete answer, as I'm sure it would be unclear how/where to change DNS for most users. Basically no change is done on the app side, just on the PC.
I used NoRoot Firewall (on unrooted device) and USB tethering wasn't working. I also used a rooted device running AFWall+ and though it has specific setting for "(tethering) - DHCP+DNS services" enabling it didn't make tethering work. So in the end I disabled it. In fact I tried only enabling Chrome browser on it, and none of the other things, and with this solution tethering still worked.
Having the phone connected and tethered, Go to Control Panel\Network and Internet\Network and Sharing Center, and click on the Local Area connection "Connections:" 
On the next screen select Properties, then highlight "Internet Protocol Version 4" and press properties below.
Now in the lower portion you see Preferred and Alternative DNS server boxes. Enter 4.2.2.2 and 8.8.8.8 there (thanks @michaelsangma)