Родился 9 апреля 1922 года в селе Хорошево (ныне Синельниковского района Днепропетровской области) в семье крестьянина. Украинец. Член ВКП(б) с 1944 года.
В Красной Армии с августа 1941 года. Проходил службу в 30-м учебно-танковом полку. В действующей армии с мая 1942 года в составе 186-й танковой бригады. Воевал в составе Западного, Воронежского, 1-го Украинского, 3-го и 2-го Прибалтийских, 2-го Белорусского фронтов.
Первое боевое крещение принял в бою около города Козельск (Калужская область). Экипаж танка подбил один вражеский танк, три автомашины и уничтожил около сорока гитлеровцев. Но и танк Щабельского был подбит, а сам он тяжело контужен. Старшина Щабельский особо отличился 21 января 1945 года в боях за город Остероде (ныне — Оструда, Польша).
После войны демобилизован. Жил в городе Синельниково Днепропетровской области. В 1957 году окончил Днепропетровский техникум культработников, работал заведующим районным отделом культуры, начальником отдела кадров рессорного завода.
Умер 26 апреля 1987 года.
Указом Президиума Верховного Совета СССР от 19 апреля 1945 года за мужество, отвагу и героизм, проявленные в борьбе с немецко-фашистскими захватчиками, старшине Щабельскому Ивану Петровичу присвоено звание Героя Советского Союза с вручением ордена Ленина и медали «Золотая Звезда» (№ 8676).
Награждён орденами Ленина, Отечественной войны 1-й степени, Красной Звезды, медалями.