Generally, if you are using Network Manager, the /etc/network/interfaces file need only contain the loopback interface. Network Manager is supposed to handle all other details for us. I suggest you right-click the NM icon and select 'Edit Connections...' Select Wired and Wired Connection 1. Be sure that Connect Automatically is checked:
If you are still having the issue, please try:
sudo apt-get install ethtool
gksudo gedit /etc/rc.local
Add the following above 'exit 0'
ethtool -A eth0 autoneg off
Proofread carefully, save and close gedit. Is it working as expected now?
If it is still not working as expected, install the replacement r8168 driver:
sudo apt-get install --reinstall linux-headers-$(uname -r) linux-headers-generic build-essential dkms
wget http://media.cdn.ubuntu-de.org/forum/attachments/44/18/3005217-r8168- dkms-8.029.00.tar.gz
sudo tar xvf 3005217-r8168-dkms-8.029.00.tar.gz -C /usr/src
sudo dkms add -m r8168-dkms -v 8.029.00
sudo dkms build -m r8168-dkms -v 8.029.00
sudo dkms install -m r8168-dkms -v 8.029.00
echo "blacklist r8169" | sudo tee -a /etc/modprobe.d/blacklist.conf
sudo modprobe -rfv r8169
sudo modprobe -v r8168
I realize there are later versions of r8168 available, however, I am not confident that the later versions work with your earlier kernel in Ubuntu 12.04. Then try rebooting to see if the ethernet starts on boot correctly.