I haven't done any real research into the whole visa-business, but I really should do that soon;) Is it not true that it's easier to get a visa if you already have a company that has agreed to let you work with them?
To put it another way, I've never seen education shut doors for me. It has, however, given my opportunities I wouldn't have had otherwise.
My advice would be to get a 4.0, get a degree, and try to go to graduate school at CMU/Boston/San Francisco area.
It's not going to be as simple as hopping on a plane and getting hired. You have a whole host of visa issues to work out, and if you do it incorrectly, you could jeopardize your chances of staying here long term forever.
One thing I do know is that the last time I checked this year's quota of H-1B visas is not even close to being used up. Normally they're all used up on the first day which is sometime in April.
Trying to do the degree you're doing is dangerous, as you've noted (although it does allow you to maintain your lifestyle and keep current in real software development). Is there any possibility that you can change to another major or school where you can get a real CS degree?