NP-hard problems are those that can be solved if there exists an NP-complete problem that can be reduced to them in polynomial time. Various algorithms can handle these problems, including reductions that convert one problem's instance into another for solution. Applications of NP-hard problems include areas like cryptography, scheduling, and data mining, with examples like the traveling salesman problem highlighting their complexity.