Cheap difficulty is a concept different from unfair difficulty, but still undesirable. There are two main forms of it: overly long sections and low wiggle room.
Wiggle room is the extent to which a player can make a mistake without losing the attempt. Wiggle room is a good thing; affording little or none of it, for example with enemies that kill the player in one hit, or time limits only slightly laxer than the fastest possible time, is cheap difficulty. It's not as satisfying to be killed by a single mistake after a minute of immaculate play as it is to be killed after a lot of mistakes.
Instead of failing the player instantly for a single mistake, make the mistakes harder to avoid. Make the enemies faster and more aggressive instead of killing the player in one hit. For games with melee combat based on avoiding attacks, I'd say a rule of thumb is that enemy attacks should take at least 3 hits to kill the player. Exceptions can be made with good reason.
Overly long sections are a similar way of dragging out a non-engaging game experience so that it becomes as hard to get through as a well-designed and balanced challenge. Do you really need to give the boss so much health that it takes a solid ten minutes to whittle it down if you don't die? Even people who are very good at something make mistakes if forced to do it for long enough, and so the result of unreasonably tough enemies is that to be good enough to win the battle the player has to be good enough that most of the time spent fighting it isn't very enjoyable. Not to mention it means more lost progress if the player loses. Instead, make the enemy more dangerous while you're fighting them, but don't force the player to do it for as long.