Here is the order that I would recommend you try things:

The problem is more then likely the IP address that your SPA8000 is advertising in it's SIP and SDP messaging. I am not super-familiar with those devices but I imagine there is somewhere in it's config to type in the external IP address of your router. The problem with this is going to be you can only have 1 SIP endpoint behind the router without getting into some really neat (well, insane) router configs. If you know of a good working STUN server somewhere and/or the device already had one filled out but not enabled then that would also help fix the problem.

Second thing I would do is go into the WRT54GL and disable ANYTHING that is supposed to help "Fix" SIP. This almost always breaks it in my experience.

Third thing to try is setting a fixed RTP port-range for the SPA and then forwarding those UDP ports from the router interface to the SPA.

If none of the above works then it's time to break out wireshark and do some packet capture/analysis. smile

Hope that helps.