I'm using some structures that have a non-zero starting offset (especially stack frames with negative starting offsets) and found that they worked fine after a few modifications of NASM's standard struc, endstruc and at macros. The modified struc takes an optional second parameter which is the structure's starting offset; it defaults to zero.
The attached file is usable as include file, but the actual macros could also replace NASM's standard macros or be included in a %use package.
Include file for structures with non-zero starting offset
This has been implemented and checked into git, (http://repo.or.cz/w/nasm.git). It will be in the next version.