Попробуйте использовать
https://api.jquery.com/outerHeight/, чтобы сравнить высоту видимой части экрана (body) с высотой сайдбара, и если высота сайдбара больше - задайте position: relative.
Но при таком подходе, у вас на всех экранах, где сайдбар выше экрана, у вас будет прокручиваться сайдбар, что не очень удобно.
Я рекомендую добавить к сайдбару overflow-y: auto, это намного удобнее для пользователя.