For ObjectARX and .NET you can get the next handle using the Database's HandSeed property, the only thing that showed up in search was in DXF reference Headers Section for $HandSeed and not sure if that is helpful for Autolisp, but I do not really see how that helps much for this situation.
Getting the exploded blocks is easy if the drawing has not been closed using BlockTableRecord.GetErasedBlockReferenceIds and you are able to get the scale factor, rotation etc......
If the drawing has been closed then you need to add a event to store the info and using scale, rotation, insertion point etc..... you could find the exploded entites and replace with a BlockReference, but not sure if that is possible in AutoLisp