Can a module be instantiated in a class, in UVM?

No, you can’t instantiate a module inside a class. Module are static objects that are instantiated before time 0 during elaboration. Classes are dynamic objects that are constructed at or after time 0 during simulation.

Check out these links:

https://verificationacademy.com/cookbook/dut-tbconnections

https://verificationacademy.com/resources/technical-papers/the-missing-link-the-testbench-to-dut-connection