Yes there is a way. Blender sort of has its own built in thing to handle this thing. The solution is similar to this: Shape keys and applying subdivision surface modifier
However because we are dealing with the mirror modifier it becomes trickier. I assume you want to export it because you are using it for your game or something (me too). But what you do is the following:
1.) Duplicate your mesh for each shape key (including basis), you can move the clones around to see them all at once
2.) For each shape key, set each shape key slider to 1 (just leave the basis one alone)
3.) For each shape key mesh, make sure your mirror modifier is not creating or destroying vertices. So make sure vertices are not colliding with the middle of the mirror when at full 1.0 because it would change the number of vertices and break this method. They can collide halfway but because we are going to be baking deformations at 1.0 that won't matter. The vertices in a shape key are allowed to go to the other side of the mirror modifier.
3.) For each shape key mesh do Convert To -> Mesh from Curve. This "bakes" out your model with the current deformations which of course takes into account your vertex blends, mirror, and subdivision if you are using it.
4.) Select all of your baked out shape key meshes with your basis as your last.
5.) Go to the basis mesh shape key panel and go "+" button -> Join As Shapes
6.) Voila. All of your shape keys should condense as their own respective sliders into your basis mesh. If one of them is missing it would be because they differ in vertex count meaning they collided or disconnected itself from the middle of the mirror modifier. Go back and fix it. You can just inspect each meshe and check at the top right details menu where it says how many vertices you have selected. Make sure they are all the same number.
The important thing is to preserve the exact number of vertices for each shape key deformed mesh. So I assume it would also work for other types of modifiers.