Lightly grease a large bowl with cooking spray. In another large bowl or in the large bowl of a stand mixer fitted with the dough hook, stir milk and yeast until yeast is mostly dissolved.
Add eggs, flour, granulated sugar, butter, salt, and baking soda and beat on low speed until combined. Increase speed to medium-high and beat until dough is smooth and elastic and starts to pull away from sides of bowl, 10 to 15 minutes.
Transfer dough to prepared bowl and turn so outside of dough is thoroughly greased. Cover with a kitchen towel and let rise until almost doubled in size, 1 to 2 hours.
On a lightly floured surface, dust dough with more flour. Using a rolling pin, roll out into a large square (about 18"x 18"). Spread to edges with filling, then roll dough into a log. Using a sharp knife, cut into 12 pieces, each about 1 1/2" wide.
Arrange rolls cut side up in prepared pan. Cover and let rise until almost doubled in size, 30 to 40 minutes.
Preheat oven to 400°. Uncover rolls and bake until golden brown, 20 to 22 minutes.
Meanwhile, in large bowl using handheld mixer or in the large bowl of stand mixer with the paddle attachment, beat cream cheese, confectioners' sugar, vanilla, and remaining 1/2 cup butter and 1/4 teaspoon salt until light and fluffy. Gradually add milk and continue to beat to loosen icing.
Immediately frost rolls. Serve warm.