I started the thread below my signature (The new format leaves off the signature. Search for "Arc Hydro Problem Solvers"). You might find more helpful hints there. You can go there and then search the page for key words such as walls, breach, etc.
If I were you I'd use a polylilne layer for the walls and add one on the road (or copy the polyline for the road to the innerwalls layer). Then in the build walls function use the culvert polylines (agreestream) as the "breach lines". In the buildwalls process, the dem is raised along the polyline and will "breach" the wall at the breach lines. This will force the flows to cross the road at the cuverts. I've done this on railroad tracks that the dem can't "see" because it is course and the area is flat.
Hope this helps.