The hosts are assigned IP address by the router using dhcp. So, the router has a list (mac addresses) of all the hosts that are directly connected to it as well their ip addresses. Now if a packet comes from outside, the router must be able to find the destination mac address from its logs. Then what is the need to use ARP in such a case (hosts connected to router)?
The only time I see an use of ARP is when router has to find new routers. Using ARP allows it to find new routers as well as to force a more rigid use of longest matching address method if needed. However what is the use of ARP during "router to host" packet transfer?