As an alternative to buying a USB Ethernet adapter you can create two interfaces on a single NIC. One will be facing your local subnet and the other will receive its ip from your ISP. A concept called "Router on a Stick" or "One-Armed Router".
But for that you will need a switch that supports vlan in order to segregate the two networks. Most don't. This one does.
To create a second interface on the RPi NIC you can use the
ip link command (from the package iproute) like this:
# vlan with mac tag
ip link add link eth0 address <mac address> name mywan type macvlan
# vlan with id tag (IEEE 802.1q)
ip link add link eth0 name mywan type vlan id <xx>
# set interface up
ip link set up dev mywan
# get an public ip from your ISP (assuming dhcp protocol is used)
dhclient -v mywan
I will do some testing and update this post if successful.
Edit: I confirm that the above setup works fine. The single RPi nic and the modem should be members of the same vlan. The modem should be connected as "trunk" or "Access" (untagged modes).