Commenting up in hopes for more attention
Q1 > The new reference design FW has FB control instead of I2C - please study the schematics. This is same as the standard SDK implementation. There is no need of calling SC_SetOTGVoltage() function.
Q2 > VBUS_IN is connected to Type-C VBUS in our design in order to support dead battery condition and VBUS sensing is done on VBUS_IN (not VBUS_C_MON). This is again compliant with SDK architecture. This should give you correct reading of VBUS on VBUS_IN since it is connected to TYPE_C_VBUS.
Just in case you want to flip this, there are macros (in standard SDK) available to be updated in stack_params.h:
#define CCG_FLIPPED_FET_CTRL (1u) // change this to zero if you are connecting VBUS_C_MON_DIS to TYPE_C_VBUS.
#define CCG_SRC_FET (0u) // This should be 1 for using P_CTRL and zero for using C_CTRL
#define CCG_SNK_FET (0u) // This should be 1 for using P_CTRL and zero for using C_CTRL
Q3 > With the new design and firmware, it should not be a problem. Verify your code with answer for Q2 and let me know if problem persists.
Q4 > Unfortunately Source code is not made publicly available for all reference designs. The latest powerbank design is compliant with SDK architecture - hence you should be able to refer to the standard source code in SDK.