You should be able to bake for longer, at lower heat - that will likely solve the problem, overcooking on the outside and undercooking on the inside is typically solved this way. How much the heat needs to be adjusted will depend on what you're baking - so I can't offer anything more precise than trial and error.
One thing I've found pretty useful when the difference is only a bit off, is checking the food early (it needs to be a bit undercooked on the surface for this), and turning the heating element off - letting the food finish cooking in residual heat. It takes a lot more time for the top to finish browning, since the heat is no longer radiating down, while the inside keeps cooking at nearly the same rate (since the oven was already hot, so the temp isn't much affected).
I find that using a pizza stone, or baking stone, really helps - it keeps the oven temperature even, and as you mentioned, it can act as a secondary source of heat. Make sure to preheat the oven really well, give plenty of extra time, since the longer time to cool is balanced by the longer time to heat. I think it will be more useful to use with the residual heat method, since it really stabilizes the temp more so than acts as a second heating element (unless you're putting the food literally on top of it), since it is limited to the temperature it absorbs from the oven, not the higher temp of the heating coil.
Also, you might find it really helpful to get a thermometer and check your oven temp - having only the top heated might make a little difference to the way the food is browning in an otherwise well calibrated oven, but it shouldn't be very dramatic, ovens are supposed to hold at their temperature - fairly stably. Your oven might be running hotter than it should, or not keeping temperature well, or else it takes longer to heat - if so you might be putting the food in while it is still running full blast to get up to temperature, rather than when it is already heated, or some other problem.