Hello, I don't know if this is possible but I created a plugin to generate a custom world, it generates the normal world with CustomBlocks but, only some blocks are really CustomBlocks and the rest if you interact, it becomes REAL_NOTE or REAL and loses its BlockData
In this image is the world generated with the plugin I created:
In this image the world blocks are without CustomBlocks and any interaction turns them into REAL_NOTE
The code I use to set CustomBlock
BlockData crosta = CustomBlock.getInstance("thornya:crosta_block").getBlockBaseData();
chunk.setBlock(X, currentHeight, Z, crosta);