I was able to check on both issues. The link problem was easy to fix, I just simply added one additional line to the previous code to remove results which has empty links or link to a hashtag.
The iframe indexing is actually doing it's job, however the problem is when the server tries to open the link for viewing, then the remote server returns a 403 error, which means that the destination URL it's forbidden to access. That I cannot fix, as it's not a plugin related issue, but something with the server where the link points to – I guess it has an access restriction based on browsers or there might be one or more redirections involved (which is even worse), I can't tell based on the error message.
You could try to investigate this, but I'm not sure if it's worth the time. I have a fair amount of experience with CURL and site parsing, and these issues are extremely hard to debug, even more if the problem is actually on the destination server. If there is some kind of redirection involved, then it's almost certainly a dead-end, server side URL parsing is not as simple as viewing a URL in a browser unfortunately.
It's much simpler to just simply enter the keywords to the box below the page where the iframe is contained, in my honest opinion.
If you like my products, don't forget to rate them on codecanyon :)