It doubles the total opening time, which may or may not be a problem. But outsourcability is so nice it's probably worth it!
Glad it seems to work.
About the opening time: could you clarify why there's an extra delay? I'm imagining that Alice would post her anchor tx and Bob would post his payment tx to Alice within seconds of each other. Bob is protected by a timeout, and Alice is protected because her tx is only paying herself at first. They wait until both txs are confirmed, then Bob can reveal his secret. Is this actually slower than your original method?
Let's assume that for some reason Bob wants it to be impossible for his tx to confirm and the anchor tx to be orphaned. I believe this can be solved by making Bob's payment outside of the channel dependent on an output from the anchor tx. The new anchor tx has a 5 BTC input from Alice, but now two outputs: one of value 1 satoshi spendable only by Bob, and another of 5 BTC (minus one satoshi) with spending requirements exactly like before. Bob broadcasts his tx paying Alice 2.5 BTC (if she knows his secret) using this 1 satoshi output as an input. Now Bob doesn't even have to wait for the anchor to be confirmed before revealing his secret, as long as he and Alice have exchanged suitable commitment txs that depend on the anchor's "main" output.