Try disabling UPnP as I read somewhere that helps. Also, I think it is just a matter of too much wall in the way and the signal cannot stay strong enough constantly.
Have you tried opening ports?
Go here:
http://www.portforward.com/english/r...on_Network.htm
TCP ports used by the PSN
80, 443, 5223
UDP ports used by the PSN
3478-3479, 3658