I was able to hack my way around the issue by observing how Visual Studio 2017 was building the project (increase the build verbosity). I'm still uncertain what the actual cause of the issue is and will report the issue to the Xamarin team.
Step 1 - Manually reference the same targets file as Visual Studio
In my.csproj
file, I had the following import statement
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\Portable\$(TargetFrameworkVersion)\Microsoft.Portable.CSharp.targets" />
which I changed to
<Import Project="C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\Microsoft\Portable\v5.0\Microsoft.Portable.CSharp.targets" />
to match the .targets file that Visual Studio imports.
Once I made this change, my build errors increase because now I was missing references to the standard namespaces (System, System.Net, etc) which Visual Studio magically references on our behalf. I also couldn't add the references to the assemblies via Visual Studio as it complained about duplicate references. So back to the text editor. I manually a=added the following references until my build errors went were resolved.
Step 2 - Manually reference the System* DLLs you need.
<Reference Include="System">
<HintPath>..\..\..\..\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\ReferenceAssemblies\Microsoft\Framework\MonoAndroid\v1.0\mscorlib.dll</HintPath>
</Reference>
<Reference Include="System">
<HintPath>..\..\..\..\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\ReferenceAssemblies\Microsoft\Framework\MonoAndroid\v1.0\System.dll</HintPath>
</Reference>
<Reference Include="System.Linq">
<HintPath>..\..\..\..\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\ReferenceAssemblies\Microsoft\Framework\MonoAndroid\v1.0\Facades\system.Linq.dll</HintPath>
</Reference>
<Reference Include="System.Net">
<HintPath>..\..\..\..\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\ReferenceAssemblies\Microsoft\Framework\MonoAndroid\v1.0\System.Net.dll</HintPath>
</Reference>
<Reference Include="System.Net.Http">
<HintPath>..\..\..\..\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\ReferenceAssemblies\Microsoft\Framework\MonoAndroid\v1.0\System.Net.Http.dll</HintPath>
</Reference>