How to create a mesh from metaballs which will always work with a Boolean modifier?
There is CubeSurfer addon for meshing sph particles. Metaballs in Blender were very slow, but they were optimized recently. It is worth testing which is faster.
I don't know if CubeSurfer guarantees manifold mesh. But I am 99.999% sure that it doesn't. Now 100% sure after your test.
I dealt with similar thing many times (booleaning fluid mesh to have smooth surface where it collides with glass - so it renders nicely).
The solution is to export the fluid mesh in frames where the boolean failes as .obj files, then manually edit those meshes so they are manifold, and substitute them in frames where the boolean failed.
The detection and exporting can be done automatically. Also the substitution if the files are named to indicate which frame they belong.
I don't know any algorithm for blender that can automatically fix a non-manifold mesh to be manifold. It would be quite complex, as it is not an easy task.
There is this paper about it, uses Cutting and Stitching.
The boolean modifier will not fail on every non-manifold mesh, only when the non-manifold piece intersects or is inside the booleaned mesh.
Also putting a smooth modifier before the boolean might cause the boolean to fail less. But it won't fix all the non-manifold problems.
So to solve it you would have to write your own particle mesher that guarantees manifold mesh. Or to hire someone to do it for you, or find a very good soul to do it for free. It's quite a job to do.
Or use a program that can do booleans on non-manifold geometry (which is totally possible, blender just uses open-source library for booleans that is not able to handle non-manifolds) or which can repair non-manifolds. Some programs that could do this are listed here.

Geometric Modeling Based on Polygonal Meshes
...this package provides source code implementing useful repairing algorithms such as Gueziec et al's cut-and-stitch for conversion to manifold (IEEE TVCG 2001)...

Also MeshLab is a nice package worth trying. It can be scripted for automation. With others I have no experience but they might be even better candidates. You just wan't them to be able to process a series of obj's.

Another approach you could take is not to boolean at all, but rather use a volumetric material with very high density with clipping. You just need to figure out the math that clips, depending on the shape you want to clip with. From your pictures looks like you need to cull with 2 planes, the planes face the camera with the local Z axis:

This though produces some wood-like artifacts: