I know exactly what you're looking for. While a debate about proper
link tag usage and CSS storage folders is always a fun topic, realize none of that is your issue here.
There are two components that allows you to add
<link> tags to Page Layouts.
First, you need to find the following lines of code in the head of the Page Layout's HTML page:
<!--MS:<asp:ContentPlaceHolder id="PlaceHolderAdditionalPageHead" runat="server">-->
<!--SPM:<%@Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=220.127.116.11, Culture=neutral, PublicKeyToken=71e9bce111e9429c"%>-->
<!--SPM:<%@Register Tagprefix="Publishing" Namespace="Microsoft.SharePoint.Publishing.WebControls" Assembly="Microsoft.SharePoint.Publishing, Version=18.104.22.168, Culture=neutral, PublicKeyToken=71e9bce111e9429c"%>-->
After those three lines you are free to add
<link> tags, with the following caveat: use the
ms-design-css-conversion="no" attribute within the
<link> tag to "exclude the style sheet from theming". Sounds counter-intuitive, but those are Microsoft's words, not mine.
In the end, you should have a
<link> tag that looks as follows:
<link href="MyPageLayout.css" rel="stylesheet" type="text/css" ms-design-css-conversion="no" />