How do I set up a network with routers and end devices?

I want to build a network which contains 33 nodes.
1 coordinator + 2 routers + 30 end devices.

10 end devices would send packet to coordinator directly.
10 end devices would send packet to coordinator through Router1 and the last 10 end devices send packet to coordinator through Router2.

I would use pin sleep option for end devices.
I have tried to set up network but faced some problems.

1)When I wake end device up, it tries to re-join the network so I have to wake it up almost 10 seconds before which causes current consumption. How could I overcome with this issue?
2)I want to send packet to coordinator through router. How can I ensure that my end device send its packet through router which is always same router. I mean if I remove router end device should not send its packet even if it is in the range of coordinator. How can I do such thing? Is it possible?

Try setting the SP time on your parent for the longest time your end device will be sleeping for.

End devices can only talk through their parent router. Even if the node that they want to send data to is next to them.

Thanks for your feedback.

Do I need to set the SP for end devices?

I do not get it. If end devices can talk only parent router, how they are going to talk with co-ordinator. Based on my experiment, I set the destination address to end device for specified router so it send records to co-ordinator through the router. If I remove router from the network then end device can’t send the record to co-ordinator. Am I doing it right?

It is part of the mesh protocol. An End device will poll its parent for data and send any data it has to issue to its parent indicating the 64 bit address of who that data is for. The parent then performs a rout discovery if that address is not already in its routing table or neighbor table. Once the path is known, the data is forwarded on from the parent router to the intended recipient. In this case the coordinator.