В общем решил всё костылём. Суть такая:
Делаю кастомную вьюху отрисовывающую background и помещаю её на верхний, системный уровень.
Формально это не предотвращает отображение статус бара свайпом, но кастомная вью в размер бара его перекрывает. Визуально артефактов или подвисаний нет. Но решение конечно костыль, допустимый лишь с учётом штучного решения под конкретные два устройства.
Код для отрисовки поверх примерно таков:
WindowManager.LayoutParams mLP = new WindowManager.LayoutParams(
WindowManager.LayoutParams.MATCH_PARENT,
statusBarHeight,
WindowManager.LayoutParams.TYPE_SYSTEM_ERROR,
WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE |
WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL |
WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN,
PixelFormat.TRANSLUCENT);
mLP.gravity = Gravity.TOP | Gravity.CENTER;
WindowManager mWindowManager = (WindowManager) getSystemService(WINDOW_SERVICE);
mWindowManager.addView(myCustomView, mLP);