Dashed line and Wireframe
Using the Wireframe modifier and Freestyle seems to me to be using two conflicting tools to do the same job, The modifier doubles up existing edges, which overlap in the Freestyle output.

At first sight, unless you have special reasons, an option would be to remove the wireframe modifier, and leave the transparency to Freestyle.



Here, the cube's material is set to be transparent so no faces are shown, and the 'Visibility' selection criterion is removed for  the solid Freestyle Line Set, so it can be seen through the cube.



For the face transparency to be effective in EEVEE, the Alpha has to be set away from 'Opaque' in the material's Settings panel.

As @Gorgious has commented, for EEVEE, it's probably better to set Alpha than Transmission on the material.

If you need to see one object inside another, and have it occlude the Freestyle lines (while they are not occluded by the containing object), this is one possible logic:


In order not to have the internal object display Freestyle, separate the Freestyle objects into a different Collection, and add a 'Collection' constraint to the Line Set selection criteria.
To have the outer object's Freestyle occluded by the inner object, you can use a QI range, which makes the display of a Freestyle stroke contingent on the number of surfaces between the edge and the eye point.