trouble with eye holes
Your mesh is extremely dense. Understand that, while the denser your mesh is, the smoother it is, it's also true that, the denser it is, the harder it is to control. At early stages of modeling, you don't need the smoothness. But you do need the control. Achieving smoothness can be saved for later. Of course, you can certainly put a Subdivision Surface modifier on your mesh at a very early stage if you want, so long as you do not apply it (meaning you don't "finalize" it) until later. This way, you can go back and forth between smooth and not smooth, to check your results over time.


On the left shows about the maximum ammout of mesh density you want while modeling. On the right shows the same mesh with a Subdivision Surface modifier added.

Another issue is topology. You mentioned a doll, so perhaps this isn't relelvant in your case, but if you want it to be animated afterwards, and exhibit facial deformations that look appropriate, you will need to take into consideration the topology, which is to say, the flow of your mesh's contours. In the pic above, note the flow of the mesh contours, and see how they build rings around the eyes. The same approach will be necessary for the mouth, and any other surface that needs to expand and contract convincingly.

Finally, Christopher Bennett correctly notes that triangles can also create a problem, especially if you want to add a Subdivision Surface modifier at any point, but also, even if you don't, because triangles (and five-or-more sided polygons, or n-gons) can create unsightly rendering artifacts, or pinching during deformation. Again, the included pic shows that all polygons are quads, and this is what you want to strive for as a general rule (there are exceptions, but they don't concern us here). These conventions are especially important in modeling a face that will make expressions.

I don't see any easy way to fix this. Likely you will need to start over. However, if you like the overall shape of your mesh, you can remesh it, and start over with the remeshed version of your model. You can put a Decimate modifier on it, and choose the Unsubdivide option. This is good if your mesh is already quads. But if it isn't, you may be better off using Quadriflow Remesh. Press F3 to bring up the search function, and type in "Quadri..." and it should pop up in the list. Select it, and set the options. Choose how many polygons you want the end result to be. For the most part, you can check all the boxes. Experiment. All you care about at this point is ending up with all quads and also keeping the general shape of your mesh in tact. Don't select a high poly count; you'll make it too dense, and that's already your main problem.

When you get done with this, you can get back to modeling the eye holes. If you have a separate eyeball object, this is ideal, because you can use it as a "cut out" guide. Create a sphere primitive. None of its generation settings matter, but make it about the right size for the face. Move it into position. Now you can model around it. Also, to ensure that you get the eyelid part of your face mesh to perfectly meet the eye object, you can put a Shrinkwrap modifier on the face object. However, by default it will shrinkwrap the entire face to the eyeball, which you don't want. So when setting up the Shrinkwrap in the modifier settings, you will want to be able to tell Blender that you only want the eyelid to be affected. To do that,  create a vertex group for the Face object, with only the vertices for the inner rim of the eyelid selected, and assign those vertices only to the vertex group. Then, when you create the Shrinkwrap modifier, in the modifier settings for it, point it to the eye object as a target, as well as to the eyelid rim vertex group you just created. This way, no part of your face will shrinkwrap to the eyeball object except for the inner eyelid rim, which means your eyelid will meet the eyeball object perfectly.

Sorry this stuff isn't easier. Hope this helps.