The yogurt which I purchase from the market looks too perfect and intact. Is there some special trick which prevents the home made yogurt from getting watery?
Many of the commercial yoghurts use stabilizers like pectin to prevent the yoghurt from separating during transport. All fruits naturally contain pectin (some more than others), so one option, if you are making your own yoghurt at home, is to add some fruit to it. Here in the US, supermarkets carry small bags of dry pectin powder; if you can get some of that, you could try adding it to your yoghurt.
Another option is to initially heat your milk to 85°C for a half hour before cooling it and adding your yoghurt starter. This heating serves two purposes: (1) it gets rid of some of the excess moisture through evaporation, and (2) the heating will denature (i.e., stretch out and relax) some of the milk's proteins. Denatured proteins will be able retain more of the liquid that is in the final product.
Finally, you can add powdered milk to the mix (about 125ml of powdered milk per liter of milk). Powdered milk is basically just milk protein, so the added protein will help contain some of the final liquid.
The type of milk, the milk fat content, the heat, the type of acid or rennet you use all have an effect on how the curds form
Two things to try are:
Better draining of the whey, use fine paper liner on the sieve, and replace a few times
Re-cooking, after the initial setting using acid or rennet (up to four hours) salt and then re-cook the curds on a low heat for a little while to encourage whey loss. If you over cook them now you will have tough or stringy curds, interesting but not good
Some commercially packaged cottage cheese has carrageen, locust bean gum or similar added to make the casein/whey slurry a bit thicker
Commercial cottage cheese is usually made with cultures and rennet, and not acid. They also have a higher fat content than normal cows milk would have, i.e. they have added extra cream to the milk