# прямой порядок (от наименьшего к наибольшему)
source_dict = dict(sorted(source_dict.items()))
# обратный порядок
source_dict = dict(sorted(source_dict.items(), reverse=True))
В указанном случае мы изменяем исходный словарь, но чтобы при сортировке формировать новый словарь, достаточно записывать результат в новую переменную:
new_dict = dict(sorted(source_dict.items()))
И также в виде функции:
def sort_dict_by_keys(source_dict: dict, reverse: bool = False) -> dict:
return dict(sorted(source_dict.items(), reverse=reverse))