|Question: Is there a need for the separate subnets?|
If not then I would suggest you connect the downstream router's LAN port to LAN port with the Motorola, and give them LAN TCP/IP settings something like the following:
Router 2 (D-Link)
SM: same as Motorola
Default Gateway: 192.168.0.1
Router 3 (Linksys)
SM: same as motorola
If you have to have separate subnets for some odd reason, then you must have something configured incorrectly because your setup looks good to me. The only thing I can't see is the WAN port configuration on the Linksys....you could have something incorrectly configured on that interface (gateway address or maybe subnet mask). I would compare the WAN settings on the Linksys to the D-Link. The only setting that should be different is the actual IP address. The rest should be the same.
The route from 192.168.2.0/24 to 192.168.0.0/24 should be created by default on the Linksys router and it should work. I would say look at the routing table and if that route looks correct, I would say reset the Linksys to factory defaults and try reconfiguring it again.
I have a "how-to" guide I wrote that may help. To see it, click on my name above in my response and look for the "adding a second router" how-to.
It matters not how straight the gate,
How charged with punishments the scroll,
I am the master of my fate;
I am the captain of my soul.