Dear ashton,
This is a very common problem that is encountered when attempting to make a stretched curd from homogenized milk. In short, when milk fat is homogenized, the membrane that naturally surrounds the fat is disturbed and replaced with casein proteins. These casein proteins are not able to interact with one another as well when they are stuck to the surface of fat globules. The result is that the casein proteins are unable to interact as well and will not knit together properly and result in a crumbly curd.
This is confounded by what appears to be a slightly excessive dose of citric acid. Regardless of the amount of citric acid that you use, you do not want the curd to clabber before you add the rennet. High acidity and clabbered milk also result in a weak curd that can fail to knit together. You can prevent the milk from curdling by adding the citric acid while the milk is still cold. Try to add only 1 tsp of citric acid. Remember that the buttermilk also contributes acidity just because of the lactic acid in the buttermilk. In addition, the culture in the buttermilk will produce enough acidity in a short time to allow the curd to stretch. It is much better to contribute less acidity in the form of additives than to to add too much. Let the cultures do a little work for you until you get a feel for the process. Eventually you will know exactly how much acid to add; a pH meter is also helpful if you would like to perfect a directly-acidified mozzarella. Believe it or not, most companies in the US and Canada produce mozzarella without cultures, even if is labeled "fresh mozzarella."
The use of calcium chloride is advisable because it increases the activity of the rennet, produces a firmer curd that is less prone to shattering, and increases the drainage of the curd, which speeds up the process.
Do not be too worried about keeping the temperature steady while the milk is renneting. As long as the temperature is in the 32 C range, the rennet will work to the extent that you need it. In the time that it takes you to set the milk with rennet (a half hour or so), the milk will not cool to the extent that the rennet stops working, even if you are only using a gallon of milk.
Instead of using homogenized whole milk, consider using a lower percentage if you would like to use homogenized milk. As Lynda demonstrated through her own experience, homogenized milk may yield a decent mozzarella if the fat content is not very high. This is logical as it would result in less casein protein being stuck to fat globules and not inhibiting protein-protein bonds to such an extent as in homogenized whole milk. However, mozzarella-style cheese is often best when the fat content is very high, such as in fior-di-latte cheese. This can be emulated by adding unhomogenized cream to skim milk. For stretched curd, any heavy cream (even ultra-pasteurized) will do. Add about one cup of heavy cream to a gallon of skim milk to emulate whole milk.
Be cautious not to coagulate the milk when you add the citric acid and you will have a beautiful curd that knits together and will stretch when heated.
Happy cheesemaking,
UVM-cheese-LAB