Родился 6 ноября 1918 года в деревне Катуновка ныне Хвастовичского района Калужской области в семье крестьянина. Русский. Член ВКП(б) с 1942 года. После окончания семилетки работал слесарем-электросварщиком на стройках Москвы и Московской области. Строил первую очередь Московского метро.
В Красной армии в 1938—1940 годах и с июня 1941 года. Участник советско-финской войны 1939—1940 годов.
С июня 1941 года Агафонов на фронте. Начал войну рядовым бойцом. В одном из боёв получил тяжёлое ранение и долго лечился в госпитале. После выхода из госпиталя Агафонов получил направление на учёбу. Окончил в 1942 году Рижское военное пехотное училище в городе Стерлитамак Башкирской АССР и был направлен на фронт в 25-ю гвардейскую стрелковую дивизию.
В феврале 1943 года Агафонов был назначен командиром батальона 73-го гвардейского стрелкового полка. Комбатом Агафонов повёл своих бойцов на штурм станции Горшечное Курской области. После дружного натиска посёлок Горшечное был освобождён. Вскоре на Курской земле Агафонов получил второе ранение.
В июне 1943 года, после госпиталя, его назначили командиром батальона в 101-й гвардейский стрелковый полк 35-й гвардейской стрелковой дивизии.
В середине августа 1943 года дивизия перешла в наступление. Освободив населённые пункты Сухая Каменка и Викнино, она развернула боевые действия в направлении города Лозовая. Батальон Агафонова первым ворвался в город и завязал уличные бои. 16 сентября 1943 года город был взят. Далее батальон, не задерживаясь, продолжал преследовать противника в юго-западном направлении. За 6 дней он преодолел почти 150 километров. 22 сентября 1943 года батальон Агафонова в составе своей дивизии вышел к Днепру в районе населённых пунктов Запорожец и Марьевка.
В ночь на 28 сентября 1943 года началась переправа через Днепр. С боем был захвачен плацдарм у села Войсковое Солонянского района. Затем в течение месяца шла упорная борьба за расширение и удержание плацдарма. Гвардейцы 1-го батальона Агафонова стояли насмерть. За эти бои капитан Агафонов удостоился ордена Александра Невского.
23 октября 1943 года 35-я гвардейская стрелковая дивизия вошла в состав 8-й гвардейской армии (бывшей 62-й Сталинградской). Боевые действия на юге Правобережной Украины осенью 1943 года, зимой и весной 1944 года проходили в тяжелейших метеорологических условиях. Дороги раскисли, реки и озёра от дождей разлились. Лучшим способом разгрома врага являлся манёвр мелкими подразделениями. Батальон Агафонова почти всё время шёл впереди.
В феврале 1944 года части дивизии удачно форсировали реку Ингулец, искусным манёвром освободили города Широкое и Новый Буг.
В мартовских боях дивизия достигла Бугского лимана. Батальон Агафонова на рыбацких лодках форсировал его и зацепился на западном берегу. И вдруг случилось непредвиденное. С Чёрного моря подул сильный ветер и погнал морскую воду в лиман. Вода поднялась и затопила плацдарм, отвоёванный у врага, а также и позиции противника. Развернулся бой на воде — на лодках и плотах. Но и в этих условиях батальон действовал героически.
В конце марта 1944 года началась Одесская наступательная операция. 6 апреля 1-й батальон Агафонова вышел на левый берег Хаджибейского лимана, форсировал его и, сминая вражескую оборону, бросился на штурм посёлка Дальник. Противник начал отходить к Аккерману. К середине 10 апреля Одесса была полностью освобождена от врага.
Летом 1944 года 8-ю гвардейскую армию перебросили на центральное направление, где действовал 1-й Белорусский фронт. С боями она двинулась к Висле. 1 августа 1944 года началось форсирование реки. На плацдарме 1-й батальон Агафонова оказался на направлении главного удара контратакующего противника. Дважды он вступал в рукопашную схватку, но позиции удержал.
Гитлеровцы перебросили большие силы, намереваясь уничтожить Магнушевский плацдарм. В направлении Мариамполе, где оборонялся батальон Агафонова, выдвигалась танковая дивизия СС «Герман Геринг». 7 августа противник пошёл в атаку. Потеряв 4 танка и 3 самоходных орудия, враг откатился. 8 августа на позиции Агафонова пошли 30 танков. Ни и в этот, и в последующие дни врагу не удалось сбросить гвардейцев в Вислу. Батальон выстоял. До конца августа шли упорные бои. Магнушевский плацдарм был удержан.
В январе 1945 года накануне общего наступления советских войск в каждой дивизии выделялись по одному-двум стрелковым батальонам, усиленным танками и самоходными артиллерийскими установками, для атаки переднего края — так называемой разведки боем. Такую задачу получил и батальон Агафонова.
14 января 1945 года в 8 часов 55 минут Агафонов увлёк батальон вперёд. С первого же натиска бойцы ворвались в первую траншею, завязав ближний бой. Противник стал отступать. Затем была прорвана и вторая позиция противника.
Из наградного листа:
Указом Президиума Верховного Совета СССР от 27 февраля 1945 года за образцовое выполнение боевых заданий командования на фронте борьбы с немецкими захватчиками и проявленные при этом отвагу и геройство Якову Михайловичу Агафонову было присвоено звание Героя Советского Союза с вручением ордена Ленина и медали «Золотая Звезда» (№ 7204).
Войну Я. М. Агафонов закончил в поверженном Берлине в районе Бранденбургских ворот. На одной из стен Рейхстага есть и автограф гвардии майора Я. М. Агафонова.
После войны Я. М. Агафонов окончил курсы «Выстрел» и продолжал служить в армии. С 1955 года майор Я. М. Агафонов в запасе. Работал в городе Кривом Роге Днепропетровской области на заводе «Криворожсталь». Умер 4 июля 1983 года.