I have two EC2 Instances on AWS. I can point my main domain name (sample.com)to one instance in Route 53. but how can I point another domain (sample.com/blog) to another EC2 Instance?
For this behaviour you cannot use just Route 53 as subfolders are not part of DNS resolution.
There are many solutions you could use but the most common for a website are using either CloudFront or an ALB to use path based routing.
CloudFront
With this solution you would put CloudFront in front of your domain (Route 53 will route to a CloudFront distribution.
A forwarded location is known as an origin, therefore you would create an origin for each of the target hosts.
The routing mechanism within CloudFront would be the behaviour, with a default behaviour used to forward to your default host.
You would then create an additional behaviour based on the path pattern of the domain that you would want to be routed to the other origin (e.g. /blog*).
More information about this option is available in the Can I use a single CloudFront web distribution to serve content from multiple origins using multiple behaviors? document.
Application Load Balancer
With this option your Route 53 record would forward to an ALB.
You would create a target group for each EC2 instance, and then register this hosts within the target group.
Within the listener in the ALB you would forward all traffic by default to one fo your target groups, then add an additional rule to the listener based on path patterns to forward to the other target group when appropriate.
More information is available within the Advanced Request Routing for AWS Application Load Balancers blog post.