Is there any way that we can limit the ECTs are available only for few web applications/site collections rather than across the farm?
Per this TechNet article, and from my own experience, there is not an explicit way to scope External Content Types (ECT) to a specific web app or site collection: http://technet.microsoft.com/en-us/library/ee524076%28v=office.14%29.aspx#setpermissions
That being said, within SP Central Admin when you create/edit an ECT, you can through its permissions limit the availability of it to certain users and/or groups (see step 8, 3rd sub-bullet in the linked page). If you don't already have one, perhaps you could create a group, whose membership itself is all the groups that have access to a given web app or site collection, and then set that meta-group as the one with "Selectable In Clients" rights on the ECT.
In effect, the strategy would be to find (or create) a group that encompasses all users of a given web app or site collection, then use said group to restrict access to a given ECT, thus limiting only users with that web app or site collection to see & use it.