Aha! This is where my warhammering comes in.
White is a terrible paint because it’s a weak pigment. There is no way around this with model paints.
The trick, insofar as there is one, is to actually paint any white areas a very light grey, and layer it up to white.
The recipe that I use is GW celestra grey -> GW Ulthuan Grey -> Army Painter Matte White.
When painting the pure white on it is important to add a little water, so that the paint goes on like a wash; it won’t settle evenly first time, but several layers of splotchiness equate to one layer of properly-applied paint!