TL DR: I'd start experimenting with adding single-digit percentages of household vinegar (≈ 5 % acetic acid).
In addition to pH (acidity), for milk total acids do play a role and may be easier for practical purposes. As several (weak) acids and buffers are involved in milk and milk products, total amount of acid vs. pH is not an easy straightforward relationship (not even after accounting for the logarithmic nature of pH). Also, the buffer capacity of milk is subject to substantial biological variation such as phase of lactation (beast milk vs. normal milk vs. milk towards end of milk production [German: altmelk, I don't know the English term]). UHT milk will probably have low variation as it will be the "usual" mix, but fresh/ESL/microfiltrated milk usually contains small amounts of lactic acid bacteria who slowly (in the fridge) feed on the lactose producing acids (lactic acid, CO2)
Over here (German speaking countries) this is expressed as °SH (Soxhlet-Henkel value). 1°SH = 2,5 mmol NaOH / l milk product needed to bring the milk or milk product above pH 8.2 (pKA phenolphthalein).
sour curdling of milk:
- fresh raw milk has 6.5 - 7.5 °SH
- > 7.5 - 8.5 °SH curdling begins with small aggregates
- > 8.5 - 10.5 °SH curdling goes small flakes -> flakes
- > 10.5 - 12 °SH flakes -> thick flakes (these flakes are not yet the big flakes/blobs that visually separate from whey, though)
some products:
- Soured milk has 30 - 40 °SH (no separation of whey),
- yoghut 35 - 60 °SH (sometimes beginning separation of whey)
- Quark 70 - 90 °SH, quark production includes separating whey from the curdled milk.
So, if you want thickening without blobs of curdled milk separating from whey/watery sauce, you'll want to stay below maybe 40 - 50 °SH. As we already have ≈ 7 °SH from the milk itself, we need to add 33 - 43 °SH, i.e. about 80 - 100 mmol acid per l milk.
Acetic acid has a single acid group and molar weight 60 g/mol, so 6 % acetic acid is 1 mol/l (density ≈ 1 g/l at those dilutions). This is in the range of vinegar as used in the kitchen. Thus, adding at most 100 ml vinegar (6 % acetic acid) per liter of milk to curdle.
Certainly if I drop milk into 100% vinegar the milk will curdle. But what if only 20% of a mixture is vinegar? 10%? 2%?
That example calculation works out to adding 100 ml / l milk. Accounting for the additional volume of the vinegar that's 9 % vinegar in the final sauce. But as noted above, curdling starts much earlier, possibly just by adding 2 °SH, i.e. 0,5 ml of our 6 % vinegar per l of milk. That's 0,05 %, so far below your 2 % mark.
(numbers taken from info sheet about SH measurements, in German)
Note that all this is still very much oversimplified. Gel formation and the so-called structural viscosity during the curdling also needs time, so kinetics does play a role.
Also, I'd not be surprised to find differences depending on what acid is added as the stability (and size) of the casein micelles (microscopic particles) in milk depends on Ca²⁺ ions. Acetate is not much of a complexing agent, but e.g. citric acid (lemon juice) is.