Hey William,
To submit to a particular partition, you could try using the queue variable - you'll have to dig around the dask documentation a bit more to find out. Of course, if you're ok with experimenting to figure this out, if the queue option fails, you can use the extra option to specify the partition.
cluster = SLURMCluster(memory='8g',
processes=1,
cores=2,
extra=['--partition=my-partition'])
Since Dask is a python package, you can use pip (or pip3) to install. From what I can tell, the job-queue package is not needed on the compute nodes (though I could be wrong).
pip3 install --user dask-jobqueue
If dask and other dependencies are needed on compute nodes, the --user flag should install the packages in your home directory, making them accessible on compute nodes. I'm interested to hear how this goes