Your "experiment" is making a lot of sense here actually. I have a similar setup, i.e. 10.3 OpenSuSE as host and guest, except I was using lilo as the bootloader which turns out to be a problem when implementing the method you tried. The problem has something to do with lilo because it requires the command "lilo" to be run after the configuration file "/etc/lilo.conf" got changed. With grub, no additional command is needed. Therefore I converted the bootloader into grub and everything works after updating uuid info in /boot/grub/menu.lst and /etc/fstab of the cloned harddisk.
Actually the "side effect" you mentioned is not really a issue and it can be easily solved. I don't know what kind of network setting you have for the cloned vm, but I'm using multiple bridged tap's (that is, devices tap0, tap1, tap2 ... are bridged with eth0 through uml-utils and bridge-utils, let me know if you need more information on how to set it up under OpenSUSE). Back to the networking problem, I simply assigned another tap device that is available (say tap1, tap0 is being used by the first vm) to the second vm. When the second vm booted, Its eth0 stopped working because the mac address of the cloned system changes and eth0 got automatically renamed to eth1. All I had to do was to configure eth1 with the settings of eth0 and delete eth0 and whola, I got the network working.
Anyway, you've just saved me tons of work on installing 10.3 over and over again. Thanks for the post.