I took a look at a very simple model: SIR for 2 population groups with the interaction matrix $A=\begin{bmatrix}\alpha & \lambda\\\mu & \beta\end{bmatrix}$, which, roughly speaking, corresponds to the random graph with 2 types of vertices and degrees within and between groups proportional to matrix elements). The balance in the matrix is, of course, that the group sizes are proportional to $\mu$ and $\lambda$ respectively. The objective is to stop the exponential spread with the minimal amount of vaccination at the moment $0$, which mathematically means that we can multiply the first row by $u$ and the second by $v$ (not vaccinated parts, both in $[0,1]$) so that the maximal eigenvalue gets below the recovery rate (say, $1$) and we want to maximize $\mu u+\lambda v$.
The answer here is simple and explicit: if $\alpha>\mu$ and $\beta>\lambda$, then $u=\frac{\beta-\lambda}D, u=\frac{\alpha-\mu}D$$u=\frac{\beta-\lambda}D, v=\frac{\alpha-\mu}D$ where $D=\alpha\beta-\lambda\mu$ is the determinant of $A$ as long as this is in the range. In all other cases, the answer is on the boundary.
Since $\beta-\lambda<\alpha-\mu$ if and only if $\alpha+\lambda>\beta+\mu$, for the "inner point" optimizer, this gives an advantage to vertices of higher degree, but not an absolute one (meaning that you do not need to vaccinate them all first before even touching the other group). Also, if $\alpha=\beta$ and $\mu=\lambda$ (all vertices look the same from any standpoint), the "fair" vaccination ($u=v$) is optimal only if $\alpha\ge\lambda$. Otherwise it becomes the worst you can do (some symmetric curve changes concavity).
One can play with some larger matrices too, say, a rank one matrix that would arise if all interaction was in the public transportation. Then the conclusion is that you should vaccinate frequent travelers first (not a big surprise, really) and (perhaps less obviously) that the importance of vaccination is proportional to the square of the average daily time in the transport (in the sense that if $A$ spends twice as much time as $B$ commuting, then if you don't vaccinate one $A$, you have to vaccinate four $B$'s to get the same effect.
In general my point is that it is worth considering a few very simple models and examples before you pass to complicated ones. And if you want to make some real recommendations from you models, keep in mind that we really do not know either the graph or the matrix, so any sophisticated fine tuning is totally impractical and the actual question seems to be if one can devise some simple strategy using only observable quantities that works "most of the time" and to point out the exceptions to it. Anyway, good luck!