Yes, for the module name instance it is possible to match the module name in Verilog, and this happens quite often when you need only one instance of the module. But you could quickly check this out for yourself by simply compiling your file with your favorite simulator. The following is the legal syntax and compilation for me:
module top;
debouncer debouncer();
endmodule
module debouncer;
endmodule
source
share