"Renaming" an output reg to another reg?
You can use continuous assignment instead of procedural assignment.
For example
wire slv_reg2;

// ...

assign slv_reg2 = interval_cdc;


I should not be changing slv_regX to a wire or renaming it

You should. Declaring a signal as wire or reg in Verilog has nothing to do with whether the signal is actually the output of a register or of combinatorial logic. It has nothing to do with whether registers or combinatorial logic is synthesized. It only determines how you can use that signal name in the Verilog language.
You can assign to wire signals by connecting them to submodule instance outputs, or with continuous assignment statements (assign). You can assign to reg signals in procedural blocks. When writing Verilog, you simply have to get used to changing the signal declaration between reg and wire if you change how you assign to the signal within the Verilog code. Again, this will have very little to do with what logic (combinatorial or sequential) gets inferred when you synthesize your design.
SystemVerilog allows you to avoid this confusing mess (at least if you don't need multiply-driven signals, such as wired-or signals) by allowing you to declare a signal as logic. This allows it to be assigned to in either a procedural or continuous assignment. Some Verilog tools may also allow using the logic signal type.
Some simulation and synthesis tools may also ignore how you declare your signals and allow you to make procedural assignments to wire signals and/or continuous assignments to reg signals, but if you write your code assuming you will be using one of these tools, it is likely to break when you for some reason have to switch to another tool.