Wow, that's pretty thorough. However, I have one question. What about transfering between your PC and your laptop? Yeah, I know you probably don't have an ftp server on either computer, but you definitely know if something is transferring fast or slow.
I would also play with the PASV setting, although I don't agree that it needs to be off. I've seen it go either way.
Linksys router makes no difference cause it's not routing traffic. it's just switching traffic.
Also, seriously, check how fragmented your drive is. In this case I really don't think that's what it is cause it stops eventually. fragmentation would make it slow, and fluxuating.
hmmm.... that's all I can really think of for now.