This is a problem that first hit me in iOS 11, but has become quite common in iOS 13. The problem is that your "Dial Assist" function has gotten confused. There is no fix for the problem, but there is a workaround that should get you back in shape. First, you will edit all of your Contacts to convert them to E.164 format and then you will reset your Dial Assist setting.
You don't mention what country you are in, so I will use the UK in my examples. You just substitute your own, or your contact's own, Country Code for the UK's +44. Open Contacts and edit each phone number in every contact. If your contact's phone number is "01234 567890", change it to "+44 1234 567890". Don't worry about spaces, they will format automatically. Do this for every phone number. Once done, no matter if Dial Assist gets confused in the future, incoming calls will always match and display the caller's name and outgoing calls will always go to the proper destination country.
Next, reset Dial Assist. Open Settings | Phone. At the bottom, turn off "Dial Assist". Then go to Settings | General | Language & Region. Change your "Region" to any other country. Back out, go back in, and change the setting back to your own country. Finally, go back and turn Dial Assist back on. Now you will be able to make ad hoc domestic phone calls by using your keypad and inputting "01234 567890".
Good luck.