You can leave the Queue Discipline at fq_codel, it the bread and butter for lazy man's QoS for now. ATM is mostly only apply to DSL type of broadband, since you have fibre, you should un-tick the box.
As for packet overhead, to really simply, you need to first understand how a ISP/carrier provider deliver internet to you on TCP/IP protocol and the OSI model. As most carrier should have equipment/implementation support MTU beyond the usual 1500 byte for various protocol overhead such as MPLS, Q-in-Q, etc as each L2/L3 protocol require a 'tag' on the TCP/IP stack to define the protocol, and as you may have guessed the 'tag' do take off some byte of data hence if you ISP/carrier has a sub-par equipment and/or poor implementation that can only provider service on the standard TCP/IP 1500 MTU, each tag will decrease the 1500 MTU value. Example, if your ISP provider service to use MPLS, 8-byte will required to tag each packet, so the max. MTU value to you will be 1500-8 so you'll need to set the MTU on 1492.
You can test your own max. value by setting the router to 1500 first, and use the following command in Windows shell:
ping -l 1500 8.8.8.8
If you get successful reply that means you can safely leave the MTU at 1500. If the request time out you can start decreasing the value by change the command after the -l syntax "ping -l 1499 8.8.8.8" and work your way down till you have a successful response. And whatever value you have at the highest possible value, that your maximum supported MTU value of your internet, and you can set that at the packet overhead.