Be careful of how you draw your comparisons. (And wait for level 6)
Your two weapon fighting is always "on" while a Paladin's spells (and a Ranger's spells) are not.
If you have one or two encounters per adventuring day, after which
the Paladin's or the Ranger's spells refresh, the difference between
your "average damage per round(DPR)" and theirs (since they both
have a more pronounced "Nova" based on spells) is pronounced.
If you have adventure days in the "as designed" frequency of ~6
encounters and two short rests, the advantage the Smites offer for
Paladin nova damage reduce somewhat. For some fights you'll still
be "on" and the Paladin is back to normal damage output.
I will make a comparison to the Paladin. Feel free to run the numbers versus a Ranger at 5th level using Hunters Mark.
A note on Action Surge: with two short rests (longer adventuring day) you regenerate two action surges which each provides a single round "nova" of 2 attacks. (Your max "nova" is three per notional adventure day). The problem is, all of this is contingent upon a robust adventure day, which doesn't always happen.
Let's examine a slightly better build first
Had you built your half-elf (using a 27 point buy perPHB) an initial buy of
13, 15, 15, 10, 10, 8 after half elf bonuses yields
13, 16, 16, 10, 10, 10.
Add 2 points to dexterity at 4th level (ASI) rather than take a feat.
13, 18, 16, 10, 10, 10
(While this build is not wholly optimized, it's used to illustrate a point).
Studded Leather gives you AC 16; wearing Half Plate give you AC 17. The Studded Leather offers less encumbrance(if that matters) and no penalty to stealth. (If that matters. Sometimes, achieving surprise gives you a mini-nova before initiative is rolled).
A collateral benefit of this finesse/dex build is that when using a long bow, (1d8 + 4 ~ avg 8.5 damage on a hit) your to hit and damage for ranged attacks is pretty good, and is "always on" while you still have arrows; your Paladin comrade will likely be less apt at dealing ranged damage.
- One level from now, at 6th level, you will get an ASI that the Paladin does not. Should this build choose the dual wielder feat, (to replace the d6 weapons with 1d8 weapons and +1 AC), or boost Dex (+2) to 20, which will increase to hit by one, bump damage to 1d6+5 per, and boost AC by +1? Run the numbers per the illustration below and see how it looks to you.
GWF Paladin has an edge without spells (at level 5)
That Paladin will tend to do more damage, but the differential between you two is not as large as you describe. On the other hand, combat is swingy in D&D 5e. ON days when the paladin can't seem to miss, or keeps getting advantage on attacks, the differential will be more pronounced.
At level 6 you increase your damage potential due to your added ASI or Feat.
Assumptions:
Paladin uses a great sword, you use two 1d6 finesse weapons. The reason for that is the boost to Dexterity with the ASI, rather than the Dual Wielder feat. (Using my example build). Increasing your to hit chance is important, since you can't damage what you don't hit; you will also increase damage per hit (+1).
When using GWF, there is a re-roll for any 1 or 2 on the first damage roll, which raises the average damage of 2d6 from 7 to 8.33. Each of your 1d6 swords does an average of 3.5, for a total of 7. You get to swing three times, the Paladin twice.
$$ \text{Avg GWF Greatsword}(2\text{d}6) = 2\left( \frac2 6 \times 3.5 + \frac4 6 \times 4.5 = \frac{25} 6 \right) = 8.33 $$
Against equivalent targets, how does damage compare?
Case 1. Enemy average AC = 15.
L5 vs AC 15:
(You both have +3 (Proficiency), and +4 (Str/Dex) to hit and (+4) to damage (str/dex) due to ASI's moving your max to 18. You each you hit 13/20 times, so the "over time" damage average is .65 times damage per attempted attack.
\$ \text{GWF:}\; 2\times(2\text{d}6 + 4) = 2\times(12.33 \times .65 + .05\times8.33) = 16.86 \,\text{DPR} \$
\$ \text{TWF:}\; 3\times(1\text{d}6+ 4) = 3\times(7.5 \times .65 + .05\times3.5) = 15.15 \,\text{DPR} \$
Case 2: L5 vs AC 18. (You both have 50-50 chance to hit on an attack).
\$ \text{GWF:}\; 2\times(2\text{d}6 + 4) = 2\times(12.33 \times .50 + .05\times8.33) = 13.163 \,\text{DPR} \$
\$ \text{TWF:}\; 3\times(1\text{d}6+ 4) = 3\times(7.5 \times .50 + .05\times3.5) = 11.775 \,\text{DPR} \$
Your DPR difference is slightly less for the higher armor class (~1.4 versus ~1.7), but average damage output still favors the GWF Paladin. If the armor class of the opponents is less than the illustration, the gap widens between you a bit more.
Let's talk about "Nova" damage
Your "Nova" using action surge: you get one action that can be two melee attacks (lvl 5 Ftr) if you take the attack action. Sadly, for TWF, your action surge does not allow you to take your usual additional bonus action. If there are more short rests, up to three times per "adventure day" you can attack for average of 2×7.5 = 15, but since you are not guaranteed to hit, that averages out to either 2×3.925 = 7.85 (vs AC 18) or 2×5.05=10.1 (vs AC 15). Between 23–30 average "extra" damage on a full day.
The Paladin's Nova (Divine Smite), even using only first level spell slots, is only effective on a hit, but when he hits it's 2d8 for an average of 9 damage. For the same three novas to parallel your three (short rest dependent) extra attacks, he does 27 average damage compared to (23–30). At level five he still has 3 spell slots to play with. (Had the paladin used 2nd level slots for two of those, the average damage is 13.5 each time). On the same adventure day you had, that's an additional 2d8, and two additional 3d8's, before all spells are expended, presuming the Paladin does not cast any other spell. (Like bless, which would boost the whole party's to hit and saves ...). 8d8 worth of Nova damage is 36 average extra nova damage beyond what you can do, but your party then does not benefit from any Paladin spells (like bless, lesser restoration, cure wounds, etc) which may be an issue based on how your party is built and how much damage you all take during a given battle.
Two Weapon Fighting starts to drop off versus GWF at level 5.
This analysis illustrates a different comparison of TWF versus GWF. In tier 1 play (levels 1-4), TWF looks pretty good. Part of the problem for TWF versus the other fighting styles is the dependency on your bonus action, but the other contributor is the limitation of weapon base damage.
As some of the other answers point out, if you are optimizing just for damage and are a fighter, you are generally better off with a strength based build.
What happens at level six? You get an ASI, the Paladin does not.
If you boost dexterity to 20, you hit the AC 18 target 55% of the time, so versus the tougher target we find ...
$$ \text{TWF:}\; 3\times(1\text{d}6+ 5) = 3\times(8.5 \times .55 + .05\times3.5) = 14.55 \,\text{DPR} $$
Versus the AC 15 target we find ...
$$ \text{TWF:}\; 3\times(1\text{d}6+ 5) = 3\times(8.5 \times .70 + .05\times3.5) = 18.375 \,\text{DPR} $$
At level 6, you'll be doing comparable (or a bit more) damage, and consistently more damage against higher AC targets because you hit more frequently. The Paladin's Nova will still be greater than yours. At 6th level he gets another spell slot to use Divine Smite with. (It's a second level slot, so that's another 3d8 / 13.5 nova potential per long rest).
Run the numbers for your current build
Run the illustrated numbers again, at level 6, to include boosting Dexterity by 2 with your ASI. Your entry for weapons damage will be 1d8 + 4, your "to hit" for AC 15 and AC 18 will be .65 and .50 respectively.
And now for the less cheerful news ... if you are competing in DPR with your Paladin friend
If the Paladin took GWF, and has the feat Pole Arm Mastery instead of using his great sword, he'll benefit from another attack (bonus action) due to that feat. His damage potential will change slightly: 1d10, 1d10 (two attacks, with the re-roll average dmg = 6.3) and 1d4 (bonus action attack, with re-roll avg dmg = 3), he re-rolls any 1, or 2 on any of those (3) dice rolls. Any of those attacks succeeding allows Divine Smite while the Paladin has a spell slot available. For adventure days with few encounters, the nova differential makes a paladin quite powerful as compared to pretty much anyone else, not just you. (See this related question). For adventure days with a lot of encounters, where spell conservation becomes an issue, the damage gap closes since your damage ability is always on. The Paladin is still able to burst down targets with high HP until spells run out.