Since you only want to insert a logo and some attached text at the top of the first page, it is better to do just that.
With the xcoffin
package, you put the content into boxes (Set), assemble the boxes(Join), and write the result (Typeset) to the current insertion point plus some X-Y offsets. \Framex
collects the logo and text boxes and places them in the upper upper corner of the page.
\maketitle
issues a new page so we need to avoid that. Also uses the plain style, which is fine.
Then you can use the fancy style, according to your specifications, for the rest of the document.
Please note that the content of the boxes is separated from the layout design. So if later you want, lets say, to put the assembly in the right side or where the text is placed in relation with the logo, only the \JoinCoffins
and/or the offsets will need to be modified.
A larger explanation of how xcoffins
works is in this answer
https://tex.stackexchange.com/a/572407/161015
and of course in the package documentation.
https://ctan.org/pkg/xcoffins?lang=en
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{fancyhdr}
\usepackage{lipsum}
\usepackage{graphicx}
\usepackage{showframe} %added
\renewcommand*\ShowFrameColor{\color{red}} %added
\usepackage{xcoffins} %added
%\pagestyle{fancy}
\fancyhf{}
\fancyhead[L]{\thepage}
\fancyhead[R]{\textit\leftmark}
\NewCoffin\Framex
\NewCoffin\Logox
\NewCoffin\Affilx
\title{MWE}
\author{Some student}
\date{December 2020}
\begin{document}
\SetHorizontalCoffin\Logox{% the logo
\includegraphics[height=5\baselineskip,width=5\baselineskip]{example-image-a}
}
\SetVerticalCoffin\Affilx{.5\textwidth}{% the text
\sffamily\noindent
University of \LaTeX \\
Institute of Typography \\
Department of Humanistic Computing \\
Professor: A good fellow \\
History of Latex 101
}
\JoinCoffins*\Framex[hc,vc]\Logox[l,t](-30pt, 80pt) % XY offset to put on the left top corner of the page
\JoinCoffins*\Framex[\Logox-r,\Logox-vc]\Affilx[l,vc](15pt,0pt) %X offset between logo and text
\noindent \TypesetCoffin\Framex
{\let\newpage\relax\maketitle} % to avoid \newpage from \maketitle. The page is in style plain
\pagestyle{fancy}
\section{One}
\lipsum
\lipsum
\section{Two}
\lipsum
\end{document}

I do not fully understand your second question.
If you use the geometry
package you can reduce the header space for all pages of the document, maximizing the text area, as shown next.
Alternatively using only fancyhdr
with the style plain
, no headers will be printed (the page number has to be somewhere) but the header space will remain. Since \maketitle
uses the plain style no further styles are needed for the rest of the document.
The page number on the first page can be suppress using \thispagestyle{empty}
after \maketitle
.
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{fancyhdr}
\usepackage{lipsum}
\usepackage{graphicx}
\usepackage{showframe} %added
\renewcommand*\ShowFrameColor{\color{red}} %added
\usepackage{xcoffins} %added
\usepackage[top=0cm,bottom=0.5cm,left=1.5cm,right=2.5cm,includeheadfoot, headheight=0cm]{geometry} %added
\NewCoffin\Framex
\NewCoffin\Logox
\NewCoffin\Affilx
\title{MWE}
\author{Some student}
\date{December 2020}
\begin{document}
\SetHorizontalCoffin\Logox{% the logo
\includegraphics[height=5\baselineskip,width=5\baselineskip]{example-image-a}
}
\SetVerticalCoffin\Affilx{.5\textwidth}{% the text
\sffamily\noindent
University of \LaTeX \\
Institute of Typography \\
Department of Humanistic Computing \\
Professor: A good fellow \\
History of Latex 101
}
\JoinCoffins*\Framex[hc,vc]\Logox[l,t](-10pt, 20pt) % XY offset to put on the left top corner of the page
\JoinCoffins*\Framex[\Logox-r,\Logox-vc]\Affilx[l,vc](15pt,0pt) %X offset between logo and text
\noindent \TypesetCoffin\Framex
\vspace{4\baselineskip}
{\let\newpage\relax\maketitle} % to avoid \newpage from \maketitle. The page is in style plain
%\thispagestyle{empty} % no headers or footers, only this page
\section{One}
\lipsum
\lipsum
\section{Two}
\lipsum
\end{document}
