There doesn't appear to be a way to tell Emacs to use a default shell for term. However, when you call the term function from elisp code, you can specify the terminal program to use.
To use this, add the following to your configuration:
(defun my-term ()
This defines a new command, which you can call as M-x my-...
(define-key term-raw-map (kbd "Q") #'terminal-burn-when-dead-or-insert-Q)
That's definitely not going to do what you wanted it to in char mode. You need to send something to the process (like the regular binding term-send-raw does), not just insert some text into the buffer (which tells the process nothing).
It's also not clear from the question ...