Personally, I found the need to have the p tags and other formatting necessary when formatting for the editors/writers we have on staff. My workaround (which may not be useful to all):
1. Copy all content into the visual editor
2. Save draft
3. Go to front-end and view source
4. Copy applicable source code
5. Paste into code editor of choice / make necessary code edits
6. Paste updated code into text editor
7. Publish
And yes, I admit that this is a bit time-consuming, but it’s been my workaround for some time and seems to give me the results I want. I’m not a fan of relying on a plugin to do this work…