UPDATE: the answer below is not correct, because I wrongly assumed that the Hamiltonian path is in an arbitrary graph, not in $K_n$. I leave it undeleted, perhaps I'll be able to fix it or it will give some hints for another answer.
I think it's NP-complete. This is a very informal/quick reduction idea from 3SAT
For every variable $x_i$ add a "variable gadget" with:
- three nodes $X_i, +X_i, -X_i$
- two variable edges $(X_i,+X_i)$ and $(X_i,-X_i)$
Add a source node $S$ and connect it to all variables $X_i$.
For each clause $C_j$ add a node $C_j$ and connect it to the corresponding variables $+X_i$ or $-X_i$ that forms the clause.
The following picture represents: $(+x_1 \lor -x_2 \lor -x_3) \land (-x_2 \lor x_3 \lor x_4)$
The set $R$ (nodes that must be linked) contains $(S, C_1), (S,C_2), ...$
The simple path $P$ should include all "BLUE" edges except the variable edges $(X_i, +X_i)$ and $(X_i, -X_i)$ (in the picture above the blue edges represent the edges that we include in $P$).
At this point, the initial formula is satisfiable if and only if the shortest path from $S$ to each clause node $C_j$ is not greater than three. Indeed to reach a clause from $S$ in three steps we must traverse at least one variable $X_i$: $S \to X_i \to \pm X_i \to C_j$. So we must traverse one of the two edges: $X_i \to +X_i$ or $X_i \to -X_i)$ and include it into $C$ (because by construction it's not part of $P$). But both cannot be included, because they share a vertex.
But we're not sure that we can build a simple path $P$ that includes all the blue edges because some nodes have more than one incident blue edge.
To fix this we replace each node with multiple incident blue edges, with a tree that contains only pairs of incident blue edges that will be included in $P$ and edges that separate them and that should be included in $C$ to reach the clause nodes:
The original graph becomes:
Each tree should have the same depth (we just can pick the max of the depth required for all the clauses/variables/S); and we must increase the value of $K$ accordingly (the number of steps to reach $C_j$ from $S$).
We can include in $C$ all the needed (not blue) edges required to reach the clause nodes because they share no vertex.
Furthermore with this construction we are able to build a simple path $P$ that traverse each vertex and each blue edge, just add extra nodes to avoid shortcuts between the clauses or variables: