A couple of quick tips:
1. Use an immersion thermometer, surface temperature doesn't always tell you what the actual temperature is (plus, laser temperature measurements are inaccurate on reflecting surfaces)
2. Heat the milk slowly
3. Follow the recipes accurately.
4. Use a pH meter.
You didn't acidify the milk so the pH was too high for the mozzarella to be proper.
Try to not get curds forming until after you add rennet. I find it best to get the milk moving and add the acid slowly while stirring the milk.
You used way way way too much citric acid which results in a too low pH for Mozzarella. If you are able to get a pH meter, use that as a guide
To get a proper Mozzarella stretch, aim for a pH 5.1 - 5.3
You can follow this recipe here to get a decent result .. make note of how much citric acid is used - 1 1/2 tsp in 1 gallon.
If you're using 1 liter of milk to get a mozzarella
What type of rennet tablets are you using? Junket? Proper rennet?
If you use proper rennet (not junket) then don't use so much of it.
My rennet tablets are so strong that 1 tablet is enough to coagulate 50 liters of milk..!!
When you get better at this, use a pH meter to get closer to your target pH since not all milk is the same (the pH of milk is different).