PSO is really picky about the number of hops to the DNS server for some reason or another... Perhaps that's what is causing your issue? Have you tried putting the IP address of your cable modem in as DNS1 and DNS2 (some modems/routers do their own DNS cacheing)? Not that it would work for anything but PSO, but maybe try using the Sylverant IP address (138.197.20.130) as DNS1/DNS2?
It does seem to me that it's either a problem with your ISP blocking packets to the server for some reason, or with the DNS requests somehow not getting through...