1. The books you want are in this thread, but the formatting is broken, so I'll give a summary: "Programming Game AI by Example" by Mat Buckland, and "Artificial Intelligence for Games" by Ian Millington are good starter texts. "Behavioral Mathematics for Game AI" by Dave Mark is a good follow-up text. "AI Game Engine Programming" by Brian Schwab has some mixed reviews but Brian sure knows his stuff (disclosure: I worked for him for a short time), so maybe that's another good one once you already have the basics down. "Artificial Intelligence: A Modern Approach" by Russell and Norvig is an essential guide to the wider world of AI, some of which you'll see in games, some of which you won't. All the AI Game Programming Wisdom books are worth getting if you can, as they contain a bunch of individual hints, tips, tricks and techniques that can be used once you already know the basics. The same applies for the newer Game AI Pro books, the first 2 of which are available for free online.
2. What is best depends on your specific goals - different studios want different skills. If you want to cover all bases, you might want to show that you can use some built-in tools like UE4's Behaviour Trees or Unity's pathfinding, plus showing you can write your own algorithms where necessary (e.g. A* path-finding is a classic, or implementing a utility system), perhaps in a minimalist framework such as SDL to prove that you understand all the parts. Generally speaking people want to be able to see the behaviour as well as the code, and you're going to need to be able to test it anyway. So you can show them a prototype of your code running in a test map of some sort.
3. State machines are trivial compared to behaviour trees. But they are not mutually exclusive. You need to understand both, and the relationship between them, and the pros and cons of each. You also need to understand other concepts like graph search, pathfinding, steering behaviours, optimisation problems, utility systems, decision trees, planners, etc. It's not necessary to implement every single one of these from the ground up, but the more you do, the more chance you have of being able to show that you know the right tool for the job, and can implement it.