If you feel guilty about giving the horse a smack when it deserves one, then go coddling it, then you will be encouraging the disrespectful behaviour. Try to think about how a boss horse would in a herd and shape your commands in a similar vein. There’s plenty of horse trainers who are selling ways to do it, so look around and find the one that you get the best. If you can find a trainer to help you thats even better. But you definitely have to stop feeling guilty if the horse deserves a whack and you give it one, the horse should feel guilty for challenging your position.
By no means does it mean you have to be nasty, much less abusive, you just need to maintain discipline. Possibly a step to not feeling guilty is to not allow yourself to get angry in the first place. If you discipline the horse but not out of any anger, but just because the horse has challenged you, it might tone down the guilt. Also, remember that horses don’t have anything remotely like human emotions, they just don’t have the physiology to maintain such a level off emotion. They have things we can interpret in human like terms, because that's how we conceptualise them, but from the horse's side, its nothing like human emotions, so if you stay calm, give the horse a whack if it needs one, the horse isn’t going to feel about that the way a human will.
In terms of lunging, personally I'd avoid taking the horse out and just lunging it, even out in the paddock, just to make them work hard and work up a sweat. So around and around in circles kind of thing. If they are just doing something repetitive like circles- ad-nauseam, then you risk souring the horse and it will still get disrespectful. Find little challenges for it, jumping stuff, walking under or into things, that kind of stuff, it gets their mid working. They might work up a sweat doing that, but if they do it having to think through things, they tend to go a lot better. Also, I never just let my horses stop when I'm lunging them, I make them stop and face up to me when I want them to. So I might, for example, get a horse to go off to my left, jump a gully, jump back over the gully to my side and stop it and have it face me. I'll leave it there for a few seconds, then send it off in the opposite direction to jump the gully again, then stop it in the same way. I never let them just trail off to a stop on their own. This helps with the respect and really builds the stop in them for when you ride them.
If the horse is getting dull to your cues there is probably a number of reasons. Firstly, check your timing. If you are not letting off the cue at the right time but letting it trail off as the horse moves out you can dull them. Alternatively if you ask for something and take the cue away too soon, before the horse gets moving right, and letting them short cut they can get dull that way too. And if you are pushing to a point, and aren’t willing to follow through to make the horse toe the line, (which given you feel guilty when you smack the horse I guess might be the one), then the horse can get lazy because it knows how far you are willing to push, and not further, then that will definitely make it dull too. If the horse isn’t wary of the whip, then you haven’t used it right. You don’t need to hurt the horse, just let the horse know, just like the boss horse of the herd will, that if the gentle signals aren’t followed, then the hard ones will come swiftly, like a hoof or teeth, or in your case, a whip. Do it right a time or two and you shouldn’t have to use it ever again, the horse will work of a point of your finger.
Don’t be discouraged by all of that, Im sure you will do well, just maintain respect, be fair and the horse will work well.