Anyone figure out how to get selected tab in lightning:tabset using onselect event

selectedTabId is actually a two-way binding. You can determine which tab is selected by setting it to an attribute. Here's your example, modified:

.cmp

<aura:component description="myProblemComponent" implements="flexipage:availableForAllPageTypes">
    <aura:attribute name="selTabId" type="String" default="tab2" />
    <div aura:id="data-entry">
        <lightning:tabset onselect="{!c.tabSelected}" variant="default" selectedTabId="{!v.selTabId}">
            <lightning:tab aura:id="tab1" tabindex="1" id="tab1" title="Tab 1" label="Tab 1">

                FIRST TAB
            </lightning:tab>
            <lightning:tab aura:id="tab2" tabindex="2" id="tab2" title="Tab 2" label="Tab 2">
                Second tab
            </lightning:tab>
        </lightning:tabset>


    </div>
</aura:component>

Controller.js

({
    tabSelected: function(component,event,helper) {
        alert(component.get("v.selTabId"));
    }
})