Even more significant than a last period, your first ultrasound measured your actual baby, and it suggests (though not guarantees) ovulation on May 2. Since it was your ninth week, there is a margin for error, but (by a hair's breadth) still doesn't quite seem to come up to when you had sex with the wrong guy. Try working on dealing with other stresses surrounding the situation, and it is possible your fear over paternity will ease.
We all make mistakes. I urge you to quit beating up on yourself and accept the pregnancy as a joyous event with a supportive boyfriend behind you. If he is really committed, you could agree that a DNA test is irrelevant. This could strengthen your relationship rather than weaken it.
For what it is worth, an April 20th menstruation and a 28 day cycle suggests ovulation May 4th, and a fertile window April 30th through May 5th. Both men are in contention, but since the bf definitely inseminated you and the jerk probably did not, my vote is for the bf.
You say you "have no idea what to do." Is this because you are certain your boyfriend is the dad, but can't stop obsessing over how you behaved? Or are you saying you're not certain who is the dad? Because we might be able to narrow it down a bit.