I agree, the way SuSE uses its dhcp client is a real bitch. I bet that if you ps -aux | grep ifdhcp you notice that you'll have multiple instances of it, and since those daemons are running they constantly screw up the default route. I had the exact same problem as you. What I did was downloaded dhclient, which is part of the dhcp package at ISC, and told those startup daemon to go to hell.
Then you can just "sudo dhclient <interface>" whenever you need a IP