Если я правильно вас понял, ваша проблема связана с тем, что процедура msdb.dbo.sp_start_job
делает именно то, что говорит: она запускает работу, а затем завершается. Он не ожидает завершения рассматриваемой работы.
Если вам нужно сериализовать выполнение ваших пакетов, в вашей основной работе вам нужно будет выполнять сами пакеты, а недругие рабочие места, которые управляют ими. Таким образом, следующий пакет не запустится, пока не закончится предыдущий.