Look into ‘branched path tracing’, or just jack up the samples to ~2000
I will try this and render a new scene tonight, never tested the branched path tracing before, how much it slows the render?
For anything with high glossy, refraction, volumes and transparency 400 samples is way too low, try with 1000 at least, specially if you’re using a lot of bounces (which are needed anyway to avoid black artifacts in the transparency).
This also looks like a textbook case for Blender’s denoiser. The reason I say that is because it was originally designed to get rid of that noise that would otherwise take forever to go away (ie, after the sampling goes well into the territory of diminishing returns).