Аким Андреевич Гаврилов родился 9 (по новому стилю — 22) сентября 1904 года в селе Большие Меми (ныне — Верхнеуслонский район Татарстана). По национальности русский.
Окончив сельскую школу, Гаврилов уехал на Донбасс, работал шахтёром. Позднее вернулся в Татарскую АССР, работал председателем рабочего комитета в одном из совхозов Мамадышского района.
22 июня 1942 года Гаврилов был призван на службу в Рабоче-Крестьянскую Красную Армию Елабужским районным военным комиссариатом Татарской АССР. В 1943 году он окончил Казанскую танковую школу, после чего был направлен на фронт Великой Отечественной войны. 20 августа 1943 года был ранен. В 1944 году Гаврилов окончил курсы младших лейтенантов, после чего вернулся на фронт в качестве командира взвода 136-го гвардейского стрелкового полка 42-й гвардейской стрелковой дивизии 40-й армии 2-го Украинского фронта.
6 марта 1944 года взвод Гаврилова участвовал в форсировании реки Горный Тикич в районе деревни Антоновка Букского района Киевской области Украинской ССР. Вплавь переправившись на занятый противником берег, он захватил плацдарм и удерживал его до переправы основных сил. Гаврилов, невзирая на шквальный ружейно-пулемётный огонь противника, в числе первых бросился в немецкие траншеи и отражал немецкие контратаки, увлекая за собой бойцов своего взвода. Он же одним из первых ворвался в Антоновку, чем содействовал расширению и удержанию плацдарма. Кроме того, группа бойцов под командованием Гаврилова захватила важные документы, при этом сам он был ранен. 9 марта 1944 года командир 136-го гвардейского стрелкового полка гвардии майор Л. Я. Уставщиков представил его к званию Героя Советского Союза.
После излечения в сентябре 1944 года был уволен в запас. Проживал и работал в городе Елабуга Татарской АССР. Умер 22 января 1982 года, похоронен на Старом кладбище Елабуги.
В честь Гаврилова названа улица и установлен бюст на Аллее Героев в Елабуге. Его имя носит средняя школа в посёлке Нижнее Озеро Верхнеуслонского района Татарстана