I had a similar issue. Maybe you can do something like this:
{% assign truncatedContent = '' %}
{% assign paragraphs = post.content | split:'</p>' %}
{% for paragraph in paragraphs limit:N %}
{{ truncatedContent | append: paragraph }}
{{ truncatedContent | append: '</p>' }}
{% endfor %}
Hope it helps.