Having done a bit of reading, it seems that the best solution might be a generalized version of the Gleeson algorithm presented in this article . However, I still do not understand how to implement this, so while I'm working on the Bansal et al algorithm .
Like my naive approach, this is Markov’s chain method, which uses random swaps, but, unlike mine, it specifically targets “triplet motifs” in the column for rewriting:

Since this will have a greater tendency to introduce triangles, it will therefore have a greater effect on the clustering coefficient. At least in the case of undirected graphs, the rewind step also ensures that the sequence of degrees is preserved. Again, at each repeated iteration, a new global clustering coefficient is measured, and a new graph is accepted if the GCC approaches the target value.
Bansal et al. Actually provided the Python implementation , but for various reasons I ended up writing my own version, which you can find here .
Performance
The Bansal approach takes just over half the number of iterations and half the total time compared to my naive diffusion method:

I was hoping for a profit increase, but 2x acceleration is better than nothing.
Oriented Graph Generalization
One remaining problem with the Bansal method is that my graphs are directed, while the algorithm of Bansal et al. It is intended only for work with undirected graphs. With an oriented schedule, the rewind step is no longer guaranteed to save sequences of inputs and outputs.
Update
I just figured out how to generalize the Bansal method to preserve both the sequences and the outer layers for directed graphs. The trick is to choose motives where the two outer edges to be exchanged have opposite directions (the directions of the edges between {x, y1} and {x, y2} don't matter):

I also made several optimizations, and the performance starts to look a little more respectable - it takes about half the number of iterations and half the total time compared to the diffusion approach. I updated the charts above with new timings.