When I do a module, I make two components: The socket and the actual module.
The socket has the main schematic symbol with all the pins, and has a 3d model with the socket(s). If it is a single sip socket it is easy enough, if it has a couple of sip sockets I build it in freecad.
The module symbol for the schematic is just a little box, and the footprint is also just a box (on user drawings layer, not on silk) the size of the module. The 3d model is the actual module, elevated in z to the level it will sit in the socket. The module can be dragged into final position over the socket, or just off to the side of the board to show what is on the pcb under the socket.
I use ref des Z for the module-socket and ZZ for the module – the module is now on the BOM as it should be. The socket is just a line item on the bom, which then needs to be tweaked to provide the appropriate sip sockets. Not a perfect solution but works for me.
For example:



