While trying to upgrade my application from v0.4.0 to v1.0.0, I bumped into this issue. I am using CONFIG_POSIX_API primarily for the clock functions like clock_settime and clock_gettime.
The "desirable" definition is the one in subsys/net/lib/sockets/socket_offload.c, and the "unwanted" definition is the one over in lib/os/fdtable.c.
It looks like at least one other architecture simply skips the fdtable version based on the architecture type. I suspect the same may be needed for nRF9160...