Not enough info to diagnose.
First of all the costly problem. The routers never disconnect.
Please check what dialer-list you have set up for the dialer interfaces. You might have some traffic (from the routing protocol for example, do you run any?) that keeps up the link. You might wish to define interesting traffic via an access list:
dialer-list 1protocol ip list 151
access-list 151 permit tcp any any eq www
access-list 151 permit tcp any any eq ftp
This will keep the link up only if there is web or ftp traffic.
Second the routing. If all your topology is included here, you will need a dialer 1 and 2 in router A to ensure connectivity with the stub nets when the link is down and router A has traffic for them.
Additionally, if there is a lot of traffic between the two stubs in absence of traffic from/toward the hub, it might be convenient (in term of call costs) to allow the two stubs to dial each other. In this case you would need snap shot routing since for each destination there is more than one path.
Finally, if your telco provider charges a call set-up cost, 60 seconds could be a too short idle time, to maximize saving.