OpenSCAD uses CSG which is generally better. Easy to convert CSG to BREP. Cant generally do the opposite

It's easy to convert because CSG is a small subset of what BREP can do.

It's analogous to "all squares are rectangles, but not all rectangles are squares" (squares=CSG, rectangles=BREP)

CSG by itself isn't suitable for most CAD use-cases.

How can I convert openSCAD models to true STEP files? As in no meshes. I Literally have wanted that for years.

You need to use https://github.com/smurfix/buildscad which can convert OpenSCAD to Build123d, then you can export a STEP file. It has a few limitations, but for simple OpenSCAD files it can generate an equivalent representation in OpenCASCADE.

Yeah, that fails for even moderately complex models...