Ok, I've spent a long time chatting back and forth with EA. They offered a solution that actually worked for me and BF2 hasn't crashed anymore (yet). Opening the proper ports on the router fixed it for now, but I'll keep everyone updated should my game revert to crashing WITH this fix. Info below.
Ports to Open:
* UDP 27900, 29900, 29910, 27901, 55123, 55124, 55215, 16567.
* UDP range 1500-4999.
* TCP 80, 29900, 29901, 29920, 28910, 4711.
Tutorials for most every Router on Port setup:
http://www.portforward.com/routers.htm
Hope this helps!
Ports to Open:
* UDP 27900, 29900, 29910, 27901, 55123, 55124, 55215, 16567.
* UDP range 1500-4999.
* TCP 80, 29900, 29901, 29920, 28910, 4711.
Tutorials for most every Router on Port setup:
http://www.portforward.com/routers.htm
Hope this helps!