If I have 2 EC2 running for a month then does that mean ELB's free
tier 750 hrs is spent by 2 instances of EC2? Hence I will only end up
w/ two free months of ELB?
No in free tier you have 750 Hrs for EC2 and 750 Hrs and 15 GB data processing for ELB. Both are separate 750 Hrs EC2 usage will not use up ELB 750 Hrs usage.
Is there a way for ELB to be turned off like an instance of EC2? So
that I can save up my 750s of free tier time when I'm not in the
process of developing?
No you cannot turn off a ELB you can delete that ELB but remember your ELB end point changes when you launch new ELB.
I have a custom domain. Is it possible to link it to my EC2 without
using ELB?
Yes you can do that, just make sure your EC2 has a Elastic IP address (Elastic IP is free when in use with a EC2 if you are not using it you will get charged so release the Elastic IP when not in use, again you will not get the same elastic IP when you want one). Once you associate the Elastic IP to the instance you add a A-Record for your custom domain to point to the Elastic IP and your website will work.