You are getting link-local
address assignment on the Raspberry Pi because your Windows network connection is not shared.
In general this is called a network bridge. On Windows, a network bridge is created when the user selects "Allow Other Network Users to Connect through This Computer’s Internet Connection"
See this question Share Windows computer internet connection with Raspberry Pi
On Automatic IP address assignment
DHCP
The usual method of automatically assigning IP addresses is through the use of a network DHCP server. In many home networks, the DHCP server is included on the router... which is usually, but doesn't need to be, also a WiFi Router.
So, if your question is:
How do I get my Raspberry Pi to have an automatically assigned address on my LAN while it is connected via an Ethernet cable to my Windows PC?
the answer is:
Create a network bridge between your LAN connected network interface on your Windows PC and your Ethernet connected Raspberry Pi.
If you do not want your Raspberry Pi to have Internet access, you can configure a static lease on your router for the Pi and configure your router's firewall rules to disable FORWARDING
for statically assigned lease address.
Of course, methods for setting up a static address and configuring the firewall will depend on your individual router.