
Consider a mix shader node in your shader nodes where you can change the contribution of each texture. A texture can determine the contribution pixel by pixel. Two standard standard textures linked to Two BSDF shaders linked to a mixed shader. The relative contributions are mixed in a ratio specified by a hand painted texture. Image above.

Texture slot in Texture Paint. UV Map. You can paint the grayscale image in either area when set up correctly. My machine is currently having problems. Final Render Seems accurate. You may need to save your image edits frequently.
A render. Checkerboard texture wrapped around torus and musgrave texture visible in areas determined by the manually paint grayscale image.
You can paint a gray scale image to hold the contribution from a texture information. You can also paint with a stencil in texture painting.
Attempt to accomplish a simple case first ... base color first .. then the texture color ... the value connected for the contribution is a gray scaled painted with texture paint. Make the texture and nodes first then your texture painting work will be realtime live ... assuming enough gpu cpu compute power.
Please inspect and improve. Currently I cannot get interactive updates on my machine. Perhaps someone will comment on that.