As to the text fonts, here is an example with babel
showing how to switch the font with the script (and the hyphenation rules, too). Actually, this example can serve as a model for other Indic languages, including Assamese, Gujarati, Hindi, Kannada, Malayalam, Tamil, etc. I presume you actually want a danda instead of a vertical bar, so I’ve replaced it. I’ve added some explanations as comments.
Note, however, you will find always ambiguous situations requiring explicit markup, as the quotes reveal in this example. No universal rules can be settled and depends largely on the document.
\documentclass[a4paper]{article}
\usepackage{babel}
% In versions >=3.79 the preferred name is odia. In previous versions
% use oriya. Although languages are usually passed as options to babel,
% in this case I’ll use \babelprovide to activate a useful transform,
% which prevents a break before a danda if preceded by a space.
\babelprovide[
import, main,
% mapdigits, % Optional: replace Arabic digits by Odia ones
transforms = danda.nobreak]{odia}
% Tell babel to switch the font and hyphenation when a char
% of the script for English (ie, the Latin script) is found.
\babelprovide[onchar = ids fonts]{english}
% By default, digits and puntuation are considered part of the Latin
% script. Very likely that’s wrong and have to be fixed in babel, but
% fortunately there is a workaround:
\babelcharproperty{`\!}[`\@]{locale}{odia}
\babelcharproperty{`\[}[`\`]{locale}{odia}
\babelcharproperty{`\{}[`\}]{locale}{odia}
% Set the main roman font, for the main language. 'Script' and
% 'Language' are set by babel. You may find a nasty and somewhat
% misleading warning about language and/or script not found raised by
% fontspec - just ignore it (it will be concealed altogether in babel
% 3.81):
\babelfont{rm}
[Renderer=HarfBuzz,
BoldFeatures={RawFeature={axis={wght=600}}},
BoldFont=*
]{NotoSansOriya-VariableFont_wdth,wght.ttf}
% Set the font for english:
\babelfont[english]{rm}{Latin Modern Roman}
\begin{document}
ନାଆଁଟି ମୋର କାଳିଆ, କେହି ନାହିଁ ମୋ ଭଳିଆ ।
``My name is Kalia, No one is like me.''
\textit{``My name is Kalia, No one is like me.''}
\textbf{``My name is Kalia, No one is like me.''}
\textbf{ନାଆଁଟି ମୋର କାଳିଆ, କେହି ନାହିଁ ମୋ ଭଳିଆ ।}
\end{document}