Organizing the build steps on AzureDevOps
You can separate the steps, especially as it would let you do divide the work among different agents. You can also leave them in a single agent if you wish. 

The primary advantage I see is leveraging different pools for different sets of work.

With releases last I checked variable scope was limited (as of 2018) to the "phase". 

I wouldn't necessarily worry about performance due to connections unless you've observed this issue and have more specific detail you can add.