have you double checked your dsl and router settings? IS it set as DMZ host? ports forwarded correctly? How about xp's firewall? (there are links to some urls that may help with both and some other tips in the post towards the top of this area of the forums with subject of Cant Dcc Send)
The only thing i can thing of in mIRC's options that may be messing you up would be if you have it set to disable sends in general/lock, or perhaps try changing lookup method in connect/localinfo to server if you have it set to normal. You said you put the ports you want in dcc options.
I'm not familiar with SDfind, but have you tried without it? Tried connecting to a diff server port? Checked the routers firmware?
Essentially, the external ip is the one on the gateway, its the "public" one used to connect to the internet. The gateway then forwards to the internal ip of the machine running mIRC. HAve you tried typing /localinfo -u to have mIRC lookup and set your localinfo settings?