Дело все в том, что перед открытием окна размер тела еще не изменялся и я пытался сделать паддинг равным разнице между одинаковыми числами. Решил костылем: записывал ширину, отключал overflow-y и потом делал паддинг. При закрытии, соответственно, обратный процесс.
$(".modal").on("show.bs.modal", function(){
var $bodyWidth = $("body").width();
$("body").css({'overflow-y': "hidden"}).css({'padding-right': ($("body").width()-$bodyWidth)});
});
$(".modal").on("hidden.bs.modal", function(){
$("body").css({'padding-right': "0", 'overflow-y': "auto"});
});