Thank you for the reply and the help, Nick!
I have edited my topology:

I edited the routing tables and ARP tables for each node:
node-0:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 172.16.0.1 0.0.0.0 UG 0 0 0 eth0
10.10.1.4 10.10.1.1 255.255.255.255 UGH 0 0 0 eth2
10.10.1.5 10.10.1.8 255.255.255.255 UGH 0 0 0 eth1
172.16.0.0 0.0.0.0 255.240.0.0 U 0 0 0 eth0
Address HWtype HWaddress Flags Mask Iface
10.10.1.5 ether 02:4e:6e:fa:6a:d6 CM eth2
172.16.0.1 ether fe:ff:ff:ff:ff:ff C eth0
10.10.1.4 ether 02:1b:18:d4:b9:02 CM eth2
node-1:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 172.16.0.1 0.0.0.0 UG 0 0 0 eth0
10.10.1.1 10.10.1.4 255.255.255.255 UGH 0 0 0 eth1
10.10.1.8 10.10.1.5 255.255.255.255 UGH 0 0 0 eth2
172.16.0.0 0.0.0.0 255.240.0.0 U 0 0 0 eth0
Address HWtype HWaddress Flags Mask Iface
10.10.1.8 ether 02:df:f6:f2:f5:61 CM eth1
10.10.1.1 ether 02:58:af:54:4c:91 CM eth1
172.16.0.1 ether fe:ff:ff:ff:ff:ff C eth0
node-2:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 172.16.0.1 0.0.0.0 UG 0 0 0 eth0
10.10.1.1 10.10.1.2 255.255.255.255 UGH 0 0 0 eth1
10.10.1.4 10.10.1.3 255.255.255.255 UGH 0 0 0 eth2
172.16.0.0 0.0.0.0 255.240.0.0 U 0 0 0 eth0
Address HWtype HWaddress Flags Mask Iface
172.16.0.3 ether fe:ff:ff:ff:ff:ff C eth0
10.10.1.4 ether 02:1b:18:d4:b9:02 CM eth2
172.17.253.254 ether fe:ff:ff:ff:ff:ff C eth0
10.10.1.1 ether 02:58:af:54:4c:91 C eth1
172.16.0.1 ether fe:ff:ff:ff:ff:ff C eth0
node-3:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 172.16.0.1 0.0.0.0 UG 0 0 0 eth0
10.10.1.5 10.10.1.6 255.255.255.255 UGH 0 0 0 eth1
10.10.1.8 10.10.1.7 255.255.255.255 UGH 0 0 0 eth2
172.16.0.0 0.0.0.0 255.240.0.0 U 0 0 0 eth0
Address HWtype HWaddress Flags Mask Iface
172.16.0.3 ether fe:ff:ff:ff:ff:ff C eth0
10.10.1.5 ether 02:4e:6e:fa:6a:d6 CM eth2
172.17.253.254 ether fe:ff:ff:ff:ff:ff C eth0
10.10.1.8 ether 02:df:f6:f2:f5:61 CM eth2
172.16.0.1 ether fe:ff:ff:ff:ff:ff C eth0
After setting up the routing tables and ARP tables as above, when I ping 10.10.1.4 from node-0 (ping 10.10.1.4) I see ICMP requests leave from 10.10.1.1 travel to node-2 (10.10.1.2) but then node-2 doesn't do anything with the ICMP requests. Node-2 doesn't pass them from 10.10.1.2 to 10.10.1.3 to 10.10.1.4.
The same thing happens when I ping 10.10.1.5 from node-0 (ping 10.10.1.5). I see ICMP requests leave from 10.10.1.8 travel to node-3 (10.10.1.7) but then node-3 doesn't do anything with the ICMP request. Node-3 doesn't pass them from 10.10.1.7 to 10.10.1.6 to 10.10.1.5.
Do the above route and ARP tables look correct? Am I missing something else?
Thank you for the help!
Harrison