I was trying to make Paneer (a type of cheese). So I boiled once then added 2 table spoons of lemon juice. Milk should be separated out instantly from water but it's been 20 minutes.. And milk is still unchanged.
Milk proteins will coagulate at particular temperatures and Phs. You wrote that you used 2 Tbs of lemon juice but you didn't say how much milk you added that to. If you used too much milk then the mixture will not be acidic enough. Follow a recipe.
You also wrote that you boiled the milk once. I don't know if it is a language barrier issue but it sounds like you boiled the milk in the past. The milk needs to be at near boiling temperatures when you add the acid. The combination of heat and acid will cause the milk proteins to unravel (denature) and tangle up with each other (coagulate) which will result in the curd you are looking for.
If the milk has been handled well, that is if you didn't leave it out overnight, then it has likely not spoiled and you can try again by either adding more acid or bringing to a boil as necessary.
Have you checked if the milk is ultrapasteurized? Ultrapasteurization denatures the curds of the milk, allowing it to briefly withstand room temperatures in transport. However, it makes it so curdling (and by extension, cheese) is impossible.
May be it is UHT milk or it is low-fat milk. In US, the milk that we get in normal grocery shops don't curd well for paneer. You can use the milk from Whole Foods.
I would imagine that either it's very diluted milk, or would try checking out what happens if the milk were a little hot/warm. That usually speeds up curdling. Otherwise, the milk should be fine, I don't see any reason for it to become unfit for consumption.