Well, you are a little bit late. Using such fonts which maps ASCII code points to Chinese, or other, glyph is outdated for a long time. Unicode was introduced in 1990s and must have prevailed at least since start of 21th century. So your problem is not really a widely discussed issue in 2024. And these fonts are no longer widely available.
But there are still fonts which maps ASCII code points to some other glyph. The font Wingdings for example maps picture symbols to ASCII (and ANSI). So this can be used for tests.
Test case source_document_glyphed_font.docx :

First paragraph text is "Abc def ghi 123 ?" formatted in font Wingdings and using different font settings.
Code:
from docx import Document
from docx.text.paragraph import Paragraph
from docx.text.run import Run
from docx.text.hyperlink import Hyperlink
from docx.table import Table
from docx.oxml.ns import qn
from docx.oxml.simpletypes import ST_String
from docx.oxml.xmlchemy import OptionalAttribute
#glyphed_font_name = 'Wingdings'
glyphed_font_name = 'Webdings'
new_font_name = 'Meiryo'
def converting_the_characters_to_Unicode_equivalents(run_inner_content: str) -> str:
#to cyrillic alphabet
#translation_table = { ord('A'): 0x0410, ord('b'): 0x0431, ord('c'): 0x0432,
# ord('d'): 0x0433, ord('e'): 0x0434, ord('f'): 0x0435,
# ord('g'): 0x0436, ord('h'): 0x0437, ord('i'): 0x0438 }
#to chinese, wild guessed, buto only to show that default font should work
translation_table = { ord('A'): 0x4E10, ord('b'): 0x4E11, ord('c'): 0x4E12,
ord('d'): 0x4E13, ord('e'): 0x4E14, ord('f'): 0x4E15,
ord('g'): 0x4E16, ord('h'): 0x4E17, ord('i'): 0x4E18 }
new_run_inner_content = run_inner_content.translate(translation_table)
return new_run_inner_content
document = Document('source_document_glyphed_font.docx')
body = document._body
for body_element in body.iter_inner_content():
if isinstance(body_element, Paragraph):
for run_element in body_element.iter_inner_content():
if isinstance(run_element, Run):
if run_element.font.name == glyphed_font_name:
for run_inner_content in run_element.iter_inner_content():
if isinstance(run_inner_content, str):
unicode_text = converting_the_characters_to_Unicode_equivalents(run_inner_content)
run_element.text = unicode_text
# unset special font name, use the default font
# try this first
run_element.font.name = None
# set special font name, if really needed
# set ascii and hAnsi font name
run_element.font.name = new_font_name
# set eastAsia font name
run_element.element.rPr.rFonts.set(qn('w:eastAsia'), new_font_name)
# set cs (complex script) font name
run_element.element.rPr.rFonts.set(qn('w:cs'), new_font_name)
elif isinstance(run_element, Hyperlink):
print('ToDo')
else:
print('ToDo')
elif isinstance(body_element, Table):
print('ToDo')
#elif isinstance(body_element, OtherBodyElementType):
#print('ToDo')
else:
print('ToDo')
document.save('source_document_unicode.docx')
Result source_document_unicode.docx:

First paragraph text is the formerly "Abc def ghi 123 ?" converted to some Chinese Unicode using some wilde guessed mapping. But Chinese glyph appear and different font settings retain while formatted using default font. And, as you told in your Question, you have solved that converting the characters to Unicode equivalents already.
Conclusion:
As always, retain to defaults first before trying special settings. Microsoft Word, at least current versions, are able to show all Unicode glyph using the default font. If the default font not contains all glyphs, Microsoft Word will use glyph from supplement fonts "Yu Gothic" or "Meiryo" or "Arial Unicode MS" depending of the Windows System. So you possibly will see "Apros" or "Calibri" as font in Word's GUI but the glyph will not be from that font but from any supplement fonts. Therefore the first you should try is to unset the special font name using run_element.font.name = None to take the document default font.
But, if really needed, you can set the new font name using run_element.font.name = new_font_name. But this only sets ascii and hAnsi font name. To set eastAsia font name too, one need to set this attribute on more low level stage:
# set eastAsia font name
run_element.element.rPr.rFonts.set(qn('w:eastAsia'), new_font_name)
Same for cs font name then.
# set cs (complex script) font name
run_element.element.rPr.rFonts.set(qn('w:cs'), new_font_name)
About Complex Scripts, you should read About Uniscribe -> About Complex Scripts