If you have already chosen the best possible region for your target customers then latency based routing will simply increase the cost of what you have already achieved. Additionally latency based routing is designed to work when you have servers in multiple availability zones or regions so as to route the user to the most appropriate availability zone based on the lowest latency from the end users location.
As for CloudFront this is a slightly different kettle of fish. CloudFront, being a content distribution network, has edge servers on a large number of different public and private network and while AWS does identify the location of most of its CloudFront edges this list does not necessarily include instances where an edge has been colocated at an ISP's network to bring the content as close to the end user as possible. It also allows to shift some load from your app servers to some specially designed static content servers which AWS keeps running fast. At this point the only way to answer your question is to ask yourself "Is the cost of using CloudFront going to be worth the decreased load on my servers?" The other thing to bear in mind is that by shifting static content to CloudFront you may find that overall load time is faster for your site not specifically due to server load, but rather due to parallell loading of static content due to the different domain being used for cloudfront (app.domain.com, cdn.domain.com).
Hope this helps.