On the J channel in The APL Farm Discord, Raul Miller and Bob Therriault helped make this less APL, more J through a few iteration.
NB. {{ (0 > x) {{ (i. (_1^x) * $ y) { , y }} x R y }}
Reshape =: (0 > [) (i.@((_1 ^ [) * $@]) { ,@]) R
NB. {{ (| x) $ (i. x) {&, y $~ |x }}
Reshape =: |@[ $ (i.@[ {&, ($~ |)~)
NB. {{ (i. x) { , (| x) $ y }}
Reshape =: i.@[ { ,@(|@[ $ ])
Reshape =: i.@[ { (,@$~ |)~
You can see the discussion start here