Родился в селе Гайворон Черниговской области в семье потомственного дворянина. Во время Первой мировой войны окончил ускоренный курс Пажеского корпуса. Участвовал в Первой мировой в составе Александрийского 5-го гусарского полка, корнет.
В ноябре 1917 сформировал и возглавил революционный эскадрон, с которым в 1918 участвовал в боях с германскими интервентами. В июне 1918 на базе Александрийского 5-го гусарского полка был сформирован Оренбургский кавалерийский полк, а Ушаков был назначен его командиром. Активный участник боевых действий на Туркестанском фронте против Вооружённых сил Юга России, а затем против басмачей. Командиром сводного Жлобинского революционного полка участвовал в боях против войск Дутова. С января 1919 командир отдельной кавалерийской бригады 1-й армии (впоследствии 2-й кавалерийской бригады 3-й Туркестанской кавалерийской дивизии 1-й армии). Отличился при освобождении Актюбинска от белогвардейцев — 2 сентября 1919 года его части первыми ворвались в город. С января 1920 — командир 3-й кавалерийской бригады 3-й Туркестанской кавалерийской дивизии, а в апреле — июле 1920 врид начальника 5-й Туркестанской кавалерийской дивизии. Член РКП(б) с 1920 года. С августа 1920 — командир бригады 3-й Туркестанской кавалерийской дивизии, с сентября 1921 — 7-й Отдельной (с июля 1922 — 2-й Туркестанской) кавалерийской бригады. Также служил начальником Тверской кавалерийской школы. В 1924—1926 — инспектор кавалерии Туркестанского фронта. В боях был 18 раз ранен. Был признан инвалидом, однако с военной службы уходить не пожелал.
В послевоенные годы командовал 8-й отдельной кавалерийской бригадой. Окончил ВАК при Военной Академии имени М. В. Фрунзе. С 1929 года — бессменный командир 9-й кавалерийской дивизии. 26 ноября 1935 года присвоено звание комдива. Служил в КВО.
В 1937 году был исключён из ВКП(б) за связь с чуждыми элементами и за притупление политической бдительности. В начале 1938 года, после отстранения от занимаемой должности, уехал в Москву, чтобы подать жалобу в КПК при ЦК ВКП(б), где и был арестован 21 февраля 1938 года, а затем этапирован в Киев.
Ушакову были предъявлены обвинения по статьям 54-1«б», 54-8, 54-11 УК УССР, суть которых состояла в том, что он якобы был членом военного заговора, членом РОВСа, по заданию которого проводил подрывную работу в 9-й кавалерийской дивизии, а также занимался шпионажем в пользу иностранного государства. Подвергался мерам физического воздействия, в результате чего сознался в предъявленных обвинениях, в том числе показал, что в военный заговор его завербовал комдив Демичев, к тому времени уже давно расстрелянный; кроме того назвал нескольких офицеров своей дивизии, которых он будто бы завербовал в заговор сам. Однако затем отказался от этих показаний. На суде 20 июля 1939 года виновным себя не признал и заявил, что все показания, данные на предварительном следствии являются ложными. ВКВС приговорила К. П. Ушакова к 15 годам ИТЛ и 5 годам поражения в правах, а также к лишению звания.
Сначала отбывал наказание во Владивостоке, а в сентябре 1940 года был этапирован в Находку. Здесь он встретился с другим осуждённым генералом-кавалеристом — А. В. Горбатовым, который, однако, возвращался в Москву для пересмотра дела. Впоследствии генерал армии Горбатов так описывал эту встречу:
За время своего пребывания в лагере написал множество жалоб в различные инстанции. Одна из них на имя К. Е. Ворошилова дошла до адресата. Маршал Советского Союза наложил на ней свою резолюцию следующего содержания:
Однако ГВП оставила жалобу Ушакова без удовлетворения, выслав ему своё решение, согласно которому по мнению сотрудников ГВП он был осуждён обоснованно. И всё же уже в годы Великой Отечественной войны Ушаков сумел добиться изменения ему приговора — отмены поражения в правах, применения отсрочки исполнения приговора и разрешения ехать на фронт. В тот момент он отбывал наказание в Свободлаге. Но к тому времени, когда документ дошёл до Ушакова, он был уже тяжело болен. А через несколько дней — 16 июля 1943 — скончался от пеллагры.
14 марта 1957 года определением ВКВС полностью реабилитирован.