Okay, generally answering my own questions after days of researching, testing and so on, I have finally got this working. It's amazing. My 3 monitors feel like million-dollar speakers. Thanks for the hint @nusch for pointing me the right direction.
Here are the general steps.
Replace PulseAudio to pipewire.3.x by following the guide at https://pipewire-debian.github.io/pipewire-debian/
Switch HDMI to Pro Audio profile, so all sub HDMI ports on gpu shows up on qpwgraph

Create a remap sink by executing:
#Don't forget to replace the device name by alsa_output.pci-alsa_output.pci-0000_01_00.1.hdmi-stereo
pactl load-module module-remap-sink master_device=alsa_output.pci-alsa_output.pci-0000_01_00.1.hdmi-stereo master_channel_map=front-left,front-right,front-center channel_map=front-right,front-left,front-center remix=false
Switch the default audio output from the ubuntu gnome sound control to remapped-sink by selecting it as output from GUI.
Build & install qpgraph at https://gitlab.freedesktop.org/rncbc/qpwgraph.
git clone git@gitlab.freedesktop.org:rncbc/qpwgraph.git
#>=Ubuntu 21.x
sudo apt install libasound2-dev libpipewire-0.3-dev libalsaplayer-dev libqt6svg6-dev libgl1-mesa-dev libqt6widgets6 libqt6gui6 qt6-base-dev qt6-base-dev g++ cmake libglx-dev pavucontrol
#<=Ubuntu 20.04
sudo apt install libasound2-dev libpipewire-0.3-dev libalsaplayer-dev libqt5svg5-dev libgl1-mesa-dev libqt5widgets5 libqt5gui5 g++-8 cmake libglx-mesa0 mesa-common-dev qt5-default pavucontrol
#before build
export CC=/usr/bin/gcc-8
export CXX=/usr/bin/g++-8
cmake -B build
cmake --build build
- Using qpwgraph to map the remap sink to playback on each playback on HDMI as followings (No need to restart the service for channel mapping.):

6.1 You can use the gnome sound control to test front, center and right. This makes mapping so much easier.

Useful commands & links
cat /proc/asound/pcm
pactl info
#restart pipewire service
systemctl --user restart pipewire-pulse.service
https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/
https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/Virtual-Devices#remap-sink
You can literally map any audio aux to a source depending on your need with pipe wire. It's super awesome. The author of qpwgraph recommended to "ditch PulseAudio altogether".
Enjoy, and don't forget to upvote and improve my answer so more people can enjoy these awesome Linux features.
Bonus points,
1.Awesome music to test out front, center, right channel - https://www.youtube.com/watch?v=3xt8Mp8oWzc
Test your speakers with this video https://www.youtube.com/watch?v=ijSYp6N5Yrs&ab_channel=4KClipsAndTrailers
You can pass your virtual sink to KVM/Qemu as an audio device, so you can game on windows / macOS and use remap sink as your audio device.
To make the changes permanent, it would be great to have someone improve my answer based on the qpwgraph export file.
All the best.