Alrighty,
Let’s start from the beginning. Fire/Smoke is not a particle simulation. It’s a grid based simulation. So there are no particles to bounce off of obstacles. Instead, each voxel knows the fluid it contains, the velocity of that fluid, and whether it’s overlapped by a geometry or not.
So imagine a voxel and some geometry moving towards it. If the movement of this geometry does not create enough velocity to blow away the fluid in this voxel, the fluid will be simply overlapped by the geometry when it reaches it.
^ These are the principles you have to follow when you want to create such a simulation. This particular setup is not something grid based solvers excel at, but this is what we have at the moment in all commercial packages. Why the science of fluid sims is so far behind is a huge and kinda sad topic 
Moving to what you can do with Phoenix regarding this kind of setup:
- Yes, you can increase the Motion Velocity Multiplier of the moving obstacle so it would create velocities high enough to blow away the smoke and temperature from the voxels before the geometry reaches them. In your setup, this is being made harder by the obstacle moving down, while the temperature tells these voxels their velocities need to rise up.
- Yes, you have to also increase the Steps Per Frame in case of a very fast moving geometry - otherwise at one step the voxel will be outside the geometry with the geometry approaching, and at the next step it might end up completely inside the moving geometry, without being affected by the wall at all. All commercial simulators of fluids and rigid bodies rely on increasing the number of simulation steps when the simulation is not precise, like in this case, so this is not an unknown concept. In Phoenix, raising the Convervation Quality will also help. In your scene it’s fairly high, though you can still boost it to e.g. 100.
- In this particular scene, you are being very naughty
Putting a modifier on a geometry in order to inverse its normals is something we DO NOT recommend. If your geometry is open, or if the simulation needs to happen on the inside of a geometry, ALWAYS use a SHELL modifier, or hand correct the geometry if you are not in a hurry.
- Make the shell thick, at least a few voxels. In this setup the Simulator is very low res as well - only 700 million, so the geometry will work better with higher resolution.
- If you don’t want to increase the Motion Velocity Multiplier to make the geometry push harder against the fluid in front, then fluid is bound to exit it unless you simulate with huge Conservation Quality and huge number of Steps Per Frame, so it’s either this or that. You could enable Clear Inside on the geometry, so the fluid is erased when it crosses over. However, the amount of fluid inside the sphere will gradually reduce over time. This is one of the main reason FLIP and not Grid-based solvers are used for liquid - when Phoenix used a grid solver for liquids, liquid slowly disappeared inside of closed volumes. However, FLIP solvers are terrible at simulating fire/smoke…
Hope this helps shed more light on the problem.
Cheers!