(Using Blender 3.6.5)
Instances are made to save resources by sharing the same mesh (i.e. points position relative to origin of the instanced object, points/edges/faces connectivity, ...). Only few and global parameters such as origin position in world coordinates, scaling and rotation are specific to each instance, and thus can be randomized. Instances with different shapes/meshes do not fit in this concept.
To achieve full random shape variations of a reference object, a Duplicate Elements node is useful as it provides the Duplicate Index that can be used to "iterate" over copies and to apply individual modifications.
The following Geometry Nodes graph mimics what seems expected from posted views, using Duplicate Elements instead of Instance on Points node. Beware that the resources cost is high, and that approaches such as the one detailed in "How can I instantiate a procedural node group with different parameters?" might be better.
1. A generic Bezier Segment is duplicated as many times as there are points in the input geometry (a simple 5x5 grid for the demonstration purpose).
2. Each copy position is shifted by the point position, from the input geometry, sharing the same Index. This position is recovered with a Sample Index node set in Point domain.
3. The End Handle to randomize is carried by the End control point of each curve. Those points have odd indexes. Such indexes are recovered by multiply by 2 (i.e. the count of control points per curve) the copy index plus 1.
4. A random offset, with Seed set to the copy index, is applied to the left handle by a Set Handle Positions node (NB: the right handle position is automatically updated for Aligned handles).
Resources: