Don't think, their being virtual changes anything. Let's call them 'server' (the one w/ two adapters) and 'client'.

So, I set up IP forwarding on the server just as described in the post above and it kind of works, but something's still missing from the setup, b/c (I'm talking about the client machine here!) I can only ping internet hosts by IP address, but can't use their names. On the server everything works as intended - I mean, I can browse the web, ping the client etc. etc.

If the client get's no response from a ping to http://www.slitaz.org you didn't setup udhcpcd for dynamic i.p. assignment on the server lan adapter the clients are connected to or your using static i.p. and didn't configure the clients adapter with DNS address.

Indeed, there was "nameserver 192.168.0.1", and when I replaced that with 8.8...., everything worked like a charm. But one problem remains - the change doesn't stick, and after reboot, I still get 192.168.0.1 in that config file.

are you on rolling or 4.0?
as Mojo said you probably are not getting your client address from dhcp.
recently rolling has been modified to default to a fixed address if a dhcp lease has not been obtained, so if your network is 192.168.0.0/24 your client ip has defaulted to 192.168.0.6 and all seems to work well, except for the wrong dns entry in /etc/resolv.conf.
check if server's udhcpcd is listening on the right eth interface, if you want to be sure to obtain an address olny trough dhcp change /etc/network.conf

# Set IP address and netmask for a static IP.
IP="192.168.0.6"
NETMASK="255.255.255.0"

Well, I did the 'network.conf' fix on the client - with mixed results.
I do see "nameserver 8.8.8.8.8.8.4.4" in /etc/resolv.conf after reboot, but DNS still isn't working properly. Should I split "8.8.8.8.8.8.4.4" into two addresses as in resolv.conf?

So, ernia's suggestions apply to the server, right? "An ip that does not belong to my network" - which one? the 10 or the 192?