This smells like PMTU problem,
try this:
when the odd behavior happends, open cmd and type
ping www.google.com -f -l 1472
if ping does not fail, increase the 1472 number by one, till it fails. then you will see two different possible responses.
"packet needs to be fragmented but no DF is set"
or
"request time out "
if you see that latter message "Request timeout" then your ISP is broken. to workaround it do this:
go to the router admin page, "Setup" then "manual internet connection setup"
find the MTU box , there is a number there, substract 32 to it, save and reboot, try again.