How to easily create regions in a mesh

How would I create different regions on a mesh and store them somewhere.

For example, let’s say I have the following mesh. The actual mesh I will be using is more detailed and has more vertices and triangles but I will use this as an example for now:

If I wanted to split the inside of the black outline into a separate mesh, so that it has its own properties, vertice and triangular values. How would I do that? I know I can manually specify each vertice to create an outline but that seems very tedious on bigger meshes. Is there a way to be able to “draw” an outline and have a program to automatically convert this outline to coordinates?

And, if I am able to draw an outline, is there a way to specify a mesh size and then make the outline best fit the mesh? For example, if I drew the outline above the program would automatically turn that outline into an outline that looks something like this (so that it can be converted to coordinates without having to draw very accurately)

I am doing this in the hopes that I can create many different regions of the meshes and be able to have the player interact with each region of the mesh separately and also define different properties with the different regions, for example, there may be different perlin noise values for different regions of the mesh.

Usually you would do this by making the different areas separate meshes or submeshes, in a 3d modelling program such as blender.