Hmm, the most popular C# IDEs (Visual Studio and Rider) don't have this problem - you can single step when debugging async code.
Is there something in particular about the JVM that makes it more difficult, or is it just that the work hasn't been done yet for some reason?