Вам нужно сделать рекурсивный вызов в вашем блоке else, иначе вы выходите из функции слишком рано. Вам также необходимо условие отказа / прерывания, это когда arr является пустым списком, либо потому что весь список был найден, либо пустой список пропущен, в этом случае возвращаем False
def checkNumber(arr, x):
if not arr: # Simple/failure case where arr is an empty list
return False
elif arr[0] == x:
return True
else:
return checkNumber(arr[1:], x)